回复 #16 huihust 的帖子
function sum1 = freq(x)sum1=0
l=length(x);
indices=[]
for i=1:l
m=x(i);
indices = find(x==m)
sum1(i)=length(indices)
end
我把内循环去了,但是还是死机。我觉得1024个数据的运算量也不大啊,我想知道为什么就总过不去
[ 本帖最后由 eight 于 2007-10-25 10:23 编辑 ] 先测试一下数据量少一点的时候会否死机,如果问题依旧,就设置断点调试一下吧
[ 本帖最后由 ChaChing 于 2009-11-21 16:38 编辑 ] 虽然用过多次hist,不过研究没有这么深入。跟着学习:@P 我搞出来了,但是不是MATLAB的函数,基本上还是C的办法,请大家继续关注啊我想用简单的函数
回复 #20 zhangnan3509 的帖子
把你的办法弄上来瞧瞧 =size(b);t=cols*rows;
N=ones(1,t);
k=0;
fori=1:cols
for j=1:rows
k=k+1;
a(k)=b(i,j);
end
end
for i=1:t-1
if i==1
for j=i+1:t
if a(j)==a(i)
N(i)=N(i)+1;
N(j)=0;
end
end
end
if i>1
c=zeros(1,i-1);
for k=1:i-1
if a(k)==a(i)
c(k)=1;
end
end
if max(c)~=1
for j=i+1:t
if a(j)==a(i)
N(i)=N(i)+1;
N(j)=0;
end
end
end
end
这是主要部分的程序。
[ 本帖最后由 zhangnan3509 于 2007-10-25 18:54 编辑 ]
页:
1
[2]