更好的做法是在数组中插入值,然后排序,或者在插入时保持排序顺序
what is better insert values in an array and then sorting or inserting while maintaining sorted order?
在c++中,哪个更快?
- 在数组中添加元素,然后使用基数排序。
- 合并排序或插入它们,同时通过简单地将更高的元素移到更高的索引来保持顺序,从而为插入元素腾出空间。
在我的例子中,数组的大小是最大100
对于100个元素的大小,这个过程非常快,您甚至不会发现任何差异。
你想怎样就怎样。
但是,如果您要查看数组中大量的项,我会说第二个选项更快。因为基数排序使用二级缓冲区来存储部分排序结果。这增加了该算法所需的内存。当处理大量的元素时,它会有很大的不同。
相关文章:
- 这是插入排序的正确实现吗?
- 使用列表 STL 递归进行插入排序
- 列表 iter 不取消引用 使用列表进行插入排序
- 如何使插入排序更快?
- 插入排序的最小交换
- 如何通过保持第一个插入的位置来对列表中插入的其余元素进行排序?
- 保持排序的数据结构,允许log N插入时间,并且可以返回我在log N中查找的元素的索引
- 插入按降序排序
- std::为插入和排序设置不同的比较器
- 双链表C++上的插入排序
- 如何在插入排序中使用 replace() 使语句变得不必要
- 如何将标准::矢量插入具有自定义排序功能的 std::set 中
- 在排序链表中插入结构并将其写入二进制文件
- 映射C++按值排序和插入元素
- 已排序插入到链表中
- 如果第一个相同,则通过按秒排序插入 STL 对集
- 寻找c++快速排序/插入排序组合中的错误
- 如果边没有按权值排序插入队列,0-1 BFS是否会产生正确的答案?
- c++选择排序插入方法和私有变量
- 在双链接列表中排序插入