1,判斷乙個字串中含有多少個回文串
public static void main(string args)
private int isornot(string str) }}
return result;
}// 找到字串中與第i個字串中相等的字串對應的下標
public static int find(char a, char x, int lo, int hi)
}return -1;// 未找到,輸出-1
}// 判斷整個字串是否是回文
public int allok(char a, int start, int end)
}return 1;
}
2,八皇后問題public class eightqueen
}putchess(0, chess);
}// 行row,臨時棋盤
public static void putchess(int row, int cchess)
system.out.println();
}system.out.println();
} else
currentchess[row][i] = 1;
putchess(row + 1, currentchess);}}
}}
// 判斷棋子是否可以下,只需要判斷棋盤上的,row行,col列
public static boolean isdanger(int row, int col, int currentchess)
}// 不危險,可以下棋
return false;
}
面試訓練八皇后問題
題目 在8 8的西洋棋上擺放八個皇后,使其不能相互攻擊,即任意兩個皇后不得處在同一行 同一列或者同一對角斜線上。下圖中的每個黑色格仔表示乙個皇后,這就是一種符合條件的擺放方法。請求出總共有多少種擺法。思路,當然採用回溯法解決,如果本行有何時的位置,則放,然後進入下一行,否則回溯到上層繼續處理。前面打...
STL和八皇后
由於棋盤有行列之分,示例是按列座標劃分的。如果乙個合適的列座標為 因此轉化為集合x 中哪些列排列的向量符合題中要求 滿足要求的向量有兩點 不能同行同列。由於在向量x中沒有重複元素,保證了不能同行同列 不能在對角線上。這一點需要函式判定,不難看出兩個皇后在同一對角線上,當且僅當abs x i x j ...
leetcode 面試題 08 12 八皇后
設計一種演算法,列印 n 皇后在 n n 棋盤上的各種擺法,其中每個皇后都不同行 不同列,也不在對角線上。這裡的 對角線 指的是所有的對角線,不只是平分整個棋盤的那兩條對角線。注意 本題相對原題做了擴充套件 示例 輸入 4 輸出 q.q q.q.q.q.q q.解釋 4 皇后問題存在如下兩個不同的解...