首页 新闻 会员 周边 捐助

C# 如何高效率的随机重组LISTVIEW1

0
悬赏园豆:15 [已解决问题] 解决于 2012-10-27 00:49
  listView7.Items.Clear();
            for (int i = 0; i < listView3.Items.Count;i++ )
            {
                ListViewItem item = new ListViewItem();
                item.Text = (listView7.Items.Count + 1).ToString();
                item.SubItems.Add(listView3.Items[i].SubItems[1].Text);
                listView7.Items.Add(item);
            }
            listView3.Items.Clear();
            Hashtable hashtable = new Hashtable();
            Random rm = new Random();
            int RmNum = listView7.Items.Count;
            for (int i = 0; hashtable.Count < RmNum; i++)
            {
                int nValue = rm.Next(listView7.Items.Count);
                if (!hashtable.ContainsValue(nValue) && nValue != 0)// 去重
                {
                    hashtable.Add(nValue, nValue);
                    ListViewItem item = new ListViewItem();
                    item.Text = (listView3.Items.Count + 1).ToString();
                    item.SubItems.Add(listView7.Items[nValue].SubItems[1].Text);
                    item.SubItems.Add("waiting");
                    listView3.Items.Add(item);
                }
                if (hashtable.Count == listView7.Items.Count - 1)
                {
                    RmNum = hashtable.Count;
                }
            }
            ListViewItem item2 = new ListViewItem();
            item2.Text = (listView3.Items.Count + 1).ToString();
            item2.SubItems.Add(listView7.Items[0].SubItems[1].Text);
            listView3.Items.Add(item2);
            item2.SubItems.Add("waiting");
            label14.Text = "网址打乱完毕,准备开始扫描";

 

C# 如何高效率的随机重组 LISTVIEW1

 

listview1 中有 1 万多行甚至更多

c 如何高效率随机打乱该 listview1 呢

 

我的代码如上  带上listview内容一朵 速度就慢了 耗时很厉害  求解决

shineme的主页 shineme | 初学一级 | 园豆:29
提问于:2012-10-26 18:55
< >
分享
最佳答案
0

1w多条记录乱序排列耗时应该是毫秒级的吧,这儿有篇我以前写的关于乱序算法的文章,你可以参考一下。

http://www.cnblogs.com/TianFang/archive/2011/09/12/2174177.html

收获园豆:15
天方 | 大侠五级 |园豆:5432 | 2012-10-26 21:48

我这个代码 运行到最后几个会越来越慢   才7万多的LISTVIEW列表 

shineme | 园豆:29 (初学一级) | 2012-10-27 00:02
其他回答(2)
0

用TestDriven.net测试下哪步耗时

向往-SONG | 园豆:4853 (老鸟四级) | 2012-10-26 21:03
0

 你是要吧打乱的全都显示出来吗? 还是显示几笔而已? 

sym_cn | 园豆:798 (小虾三级) | 2012-10-26 22:07

全部显示的

支持(0) 反对(0) shineme | 园豆:29 (初学一级) | 2012-10-26 22:11
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册