Matlab 枚举法求解八皇后问题
2013-03-17 20:31
369 查看
Matlab在矩阵处理方面有着天然的优势,而现在计算机的处理速度枚举8皇后问题已经不是问题
clear;clc;close all cols=perms(1:8); % 皇后所在列的位置 S=size(cols,1); M=zeros(8,8,S); % 存储所以情况的矩阵 M(sub2ind(size(M), repmat((1:8)',1,S), cols', repmat(1:S,8,1))) = 1; M(:,:,arrayfun(@(k)any([sum(spdiags(M(:,:,k))),sum(spdiags(rot90(M(:,:,k))))]>1),1:S)) = [];
相关文章推荐
- Matlab 递归求解八皇后问题
- 八皇后问题求解
- 八皇后问题求解——之递归
- 利用递归求解八皇后问题
- Python求解“八皇后”问题的递归思路
- 八皇后问题递归求解二
- 遗传算法 求解旅行商 TSP 问题,matlab代码
- 八皇后问题求解-回溯算法
- MatLab建模学习笔记10——利用罚函数求解非线性规划问题
- 基于MATLAB的模拟退火算法求解TSP问题
- 八皇后问题求解
- 用枚举法求解百钱百鸡问题(复习)
- MatLab建模学习笔记10——利用罚函数求解非线性规划问题
- 回溯法求解八皇后问题
- matlab求解线性规划问题
- Matlab求解数学问题
- 使用MATLAB自带函数求解二次特征值问题
- 使用MATLAB进行一次和二次规划问题求解
- 八皇后问题求解
- ai-2698-八皇后问题-C语言-递归求解