首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

大侠们帮小弟我看看!小弟我有一简单数组,删除元素用什么算法最好呢

2012-01-03 
大侠们帮我看看!我有一简单数组,删除元素用什么算法最好呢?dimxxxdimTempxxxArray(1,2,3,4,5,6,7,8,9,10,

大侠们帮我看看!我有一简单数组,删除元素用什么算法最好呢?
dim   xxx
dim   Temp
xxx   =   Array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20)

Temp   =   Array(3,6,14,1,5,18)

Temp数组中的元素是随机的,但范围在1-20间,也就是XXX的子集

要求xxx删除temp中的元素,得到新的一个数组···

怎样的算法最好?

我用算法比较差,用了   词典   dim   xxx   As   New   Dictionary   ,添加修改都非常方便。
但人家都说数组存储快,上面20个元素只是举例子,事实不止20个···

[解决办法]
要是链表不用移动数据还可以,要是移动数据就不好了!
xxx = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
Temp = Array(3, 6, 14, 1, 5, 18)
dim newxxx() as integer
for i = 0 to ubound(Temp)
xxx(Temp(i)-1)= 0
next

redim newxxx(20-ubound(temp)) as integer
dim Count as integer
for i = 0 to 19
if xxx(i) <> 0 then
newxxx(count) = xxx(i)
count++
end if
next

热点排行