
数据结构实验
文章平均质量分 76
C++
一只酷酷光儿( CoolGuang)
桃李不言 下自成蹊
展开
-
【C++进阶】C++用智能指针实现对象池管理
在准备面试 or 考研,发现了对象池管理,自己就试着写一下吧。 前置知识 泛型、智能指针、内存管理 解决场景 如果出现对象频繁的创建或者删除时,可以考虑使用对象池。 具体实现 具体的思路即为对象内存的复用。 利用智能指针的性质(这里特质uniqueuniqueunique指针),原因是因为uniqueuniqueunique指针只可以一个对象指向同一个内存,并且在执行movemovemove函数时,之前指针内容会全部销毁。 所以可以根据内存服用,保留一个vectorvectorvector用来存储已经申.原创 2021-06-09 16:29:49 · 638 阅读 · 3 评论 -
【数据结构】插入排序、冒泡排序、堆排序、快速排序、基数排序、归并排序简略解析
临近考研、面试,抽了几个平时不太会写的排序算法重新温习了一下,下面做个总结,亦或者说用一句话概括一下简略思想吧。 插入排序 假设前i−1i-1i−1个元素已经有序,那么很容易通过O(n)O(n)O(n)的算法应该插入的位置,使得前i个元素有序,所以复杂度为:O(n2)O(n^2)O(n2) 冒泡排序 假设前iii个元素已经是已知序列中的前iii小元素,并且已经有序,那么将后面n−in-in−i个元素中的最小值(第i+1i+1i+1小元素)通过交换置换到i+1i+1i+1的位置即可。 堆排序 前置知识: 首原创 2021-06-07 17:11:55 · 353 阅读 · 4 评论