请教 用matlab编写 八皇后问题(或者n皇后问题)

baihongmei 2006-06-14 10:48:21
我的代码,好像很有问题
请高手看一下
很着急,马上就要交差了
请赐教,不胜感激
还要编成c语言的
先完成matlab再说


function F=queen(H,n)
%queen 皇后算法得到信息位
%H 小方块
H=zeros(n)
i=1
T=H
while (i>=1&i<=n)
z=judgezero(T,i)
if z==0
i=i-1
H(i-1,chess(i))=-1
T=H
else
for j=1:n
if H(i,j)==0
H(i,j)=1
break
end
end
chess(i)=j
T=false(H,i,j)
i=i+1
end
end

function z=judgezero(H,i)
[m,n]=size(H)
z=0
for j=1:n
if H(i,j)==0
z=z+1
end
end

function T=false(H,i,j)
[m,n]=size(H)
for k=i+1:n
a=j
b=mod(j-k+i+n,n)
if b==0
b=n
end
c=mod(j+k-i+n,n)
if c==0
c=n
end
H(k,a)=-1
H(k,b)=-1
H(k,c)=-1
T=H
end
...全文
589 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
dzm_matlab 2006-09-21
  • 打赏
  • 举报
回复
高手帮帮我~~~walsh码在CDMA移动通信系统中的应用:必须在MATLAB软件下应用,将[0](1乘1的距阵)或[1]1乘1的距阵)扩展为128乘128的距阵,我现在需要一段程序,救我.~~~~
编一段程序是128乘128的(cdma).谢谢
请和我联系13811464041(短信,打电话都可以) 邓志明

lesleyc 2006-06-15
  • 打赏
  • 举报
回复
你把遇到的问题说清楚一点呀

3,423

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 其他开发语言
社区管理员
  • 其他开发语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧