首页 > 其他 > 详细

性能优化之for嵌套循环

时间:2015-08-08 01:22:23      阅读:243      评论:0      收藏:0      [点我收藏+]
性能优化其实有时候就在工作中的点滴积累.

在工作中,时常 会碰到同事感叹速度太慢,特别是对大数据做处理时.但只要注意可能很小很easy的改变,就可以让速度大为改观.

比如一个功能需要比较A仓库有但B仓库也有的物料,可能很多同事直接是以下代码:

 ArrayList AMatList = new ArrayList();
        ArrayList BMatList = new ArrayList();
        ArrayList sameMatList = new ArrayList();
        for (int i = 0; i < AMatList.Count; i++)
        {
            for (int j = 0; j < BMatList.Count; j++)
            {
                if (AMatList[i] == BMatList[j])
                {
                    sameMatList.Add(AMatList[i]);
                }
            }
        }

这样的数量级是n^2级;

其实换个简单的思路,数量级马上变成n:


   ArrayList AMatList = new ArrayList();
        ArrayList BMatList = new ArrayList();
        ArrayList sameMatList = new ArrayList();
        for (int i = 0; i < AMatList.Count; i++)
        {
            if (BMatList.Contains(AMatList[i]))
            {
                sameMatList.Add(AMatList[i]);
            }
        }

版权声明:本文为博主原创文章,未经博主允许不得转载。

性能优化之for嵌套循环

原文:http://blog.csdn.net/xingmyworld/article/details/47347563

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!