Results 1 to 2 of 2
- 12-03-2011, 11:29 AM #1
Member
- Join Date
- Dec 2010
- Posts
- 59
- Rep Power
- 0
Need an explanation regards the following recursion
Hi, need help understanding the calculation aspect of: if ((q[i] - q[n]) == (n - i)) return false; // same major diagonal
in the following code:
Java Code:public class Queens { /*********************************************************************** * Return true if queen placement q[n] does not conflict with * other queens q[0] through q[n-1] ***********************************************************************/ public static boolean isConsistent(int[] q, int n) { for (int i = 0; i < n; i++) { if (q[i] == q[n]) return false; // same column if ((q[i] - q[n]) == (n - i)) return false; // same major diagonal if ((q[n] - q[i]) == (n - i)) return false; // same minor diagonal } return true; }
Thanks :-)
- 12-03-2011, 01:01 PM #2
- Join Date
- Sep 2008
- Location
- Voorschoten, the Netherlands
- Posts
- 11,606
- Blog Entries
- 7
- Rep Power
- 17
Re: Need an explanation regards the following recursion
Draw an eight x eight grid on a piece of paper; the top row of your grid contains the coordinates (0, 0) (0, 1) (0, 2) (0, 3) (0, 4) (0, 5) (0, 6) and (0, 7); the next row contains the coordinates (1, 0) (1, 1) (1, 2) ... etc. Supose your array q contains eight elements, one for each column in your grid and q[i] contains the second coordinate in the coordinate pair (i, q[i]).
If q[i] ==q[n] there are two queens in columns i and n that are positioned in the same row. Check your grid and try to find a regularity for two values in the same upgoing diagonal and similar for a down going diagonal.
kind regards,
JosWhen people rob a bank they get a penalty; when banks rob people they get a bonus.
Similar Threads
-
need explanation
By marie in forum New To JavaReplies: 2Last Post: 03-21-2010, 03:35 PM -
recursion and tail-recursion differences
By OptimusPrime in forum New To JavaReplies: 2Last Post: 12-28-2009, 06:26 PM -
explanation of this loop?
By glopez09 in forum New To JavaReplies: 4Last Post: 11-15-2009, 02:36 AM -
need a little explanation
By cew27 in forum New To JavaReplies: 7Last Post: 12-13-2007, 11:39 PM -
I need didactic explanation
By Eric in forum New To JavaReplies: 2Last Post: 07-02-2007, 05:37 AM


LinkBack URL
About LinkBacks
Reply With Quote
Bookmarks