作者MOONRAKER (㊣遂去,不复与言)
看板Visual_Basic
标题Re: [.NET] 阵列可以找出相同值吗?
时间Tue May 24 10:45:59 2011
※ 引述《iconograph (return false;)》之铭言:
: 请问有前辈知道阵列可以找到相同值吗?
: 我是使用Ubound(split(string_A,",")) 阵列之中会有相同值出现
: 不知道可以另外挑出来或是忽略吗?
: 请前辈提点! 感谢
uniq() (去掉阵列内相同值)的简单写法:
令阵列为 a , 另外准备一个空阵列为 b .
1: 给 a 排序 ( a.Sort() )
2: 令 v = a(0)
3: 把 v 插入 b 中。
4: 令 i = 1 到 ubound(a) :
若 v <> a(i) :
令 v = a(i) , 并把 v 插入 b 中。
5: b 的内容就为所求。
不计前面排序的时间,这个方法的复杂度为 O(n)
排序的时间远大於後面步骤的时间。
注意第二步是令 v = a 的第一个值,而第四步是要从 a 的第二个值开始处理
不过这其实没差,你要令 i = 0 到 ubound(a) 也可以
结果是一样的。
--
从前有个马铃薯王国 有个高贵伟大的国王
有的人尊敬他 有的人畏惧他 但有个人敢看不起他不只是一条龙
嘿呵 快出动 去征服 去摆平 嘿呵 快出征 去征服那条龙
嘿呵 快出动
(宰了它!轰了它!)嘿呵 快出征 去征服那条龙
:■ Potatoes and Dragons (C)Alphanim France 2004-05 :.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.120.168.228
1F:推 iconograph:使用中,大力感谢! 05/24 20:08