性能优化其实有时候就在工作中的点滴积累.
在工作中,时常 会碰到同事感叹速度太慢,特别是对大数据做处理时.但只要注意可能很小很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]); } }
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-23 06:11:05