排序算法稳定性
值相同的元素排序结束后能否保持相对秩序不变。
冒泡排序具有稳定性(相等时不交换)。
插入排序具有稳定性。
归并排序具有稳定性(merge的时候,相等时先拷贝左边的,小和问题让其丧失了稳定性)。
桶排序具有稳定性(先入桶的先出桶)。
排序算法总结
一般情况下,快速排序最经常使用,速度最快。
基于比较的排序,不能做到时间复杂度在O(N*logN)以下。
时间复杂度O(N*logN),在保持稳定性的同时,空间复杂度不能在O(N)以下。
哈希表(unordered_map unordered_set)
有序表(ordered_map ordered_set)
链表
可以通过哈希表存储和快慢指针(注重coding)来节省空间。
剑指 Offer 35. 复杂链表的复制 - 力扣(LeetCode)https://leetcode.cn/problems/fu-za-lian-biao-de-fu-zhi-lcof/