例如有一个很大对象数组
var arr = [{
id: 1,
name: 'a'
},{
id: 10,
name: 'c'
}
.......
];
我现在有一个id = 10, 希望在这个arr中快速查询出这个对象
{
id: 10,
name: 'c'
}
我知道循环arr, 判断循环当前对象的id是否为10可以, 但是有没有更好的方法呢
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
以上方法用的是分治法的思想,二分查找
数组就不太好弄了,要么把数组转成用id做key的hash,复杂度O(1),要么用二分查找复杂度O(logn)也还算效率高