05 2022 档案

摘要:UniquePtr:独占所有的对象。 1 #include <iostream> 2 3 4 using namespace std; 5 template<typename T> 6 class UniquePtr{ 7 private: 8 T * ptr; 9 //non-copy 10 Un 阅读全文
posted @ 2022-05-18 14:47 coyote25 阅读(103) 评论(0) 推荐(0) 编辑
摘要:share_ptr:c++11引入的智能指针。是模板类,允许多个指针指向同一个对象。通过判断引用计数的值,来决定何时释放动态内存。 1.用nullptr构造时,引用计数为0; 2.用非nullptr构造时,引用计数为1; 3.拷贝一个share_ptr,引用计数会加1:如拷贝构造,share_ptr 阅读全文
posted @ 2022-05-18 13:50 coyote25 阅读(194) 评论(0) 推荐(0) 编辑
摘要:#include <bits/stdc++.h> using namespace std; //正则匹配 class Solution{ public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param str string字符串 * @ 阅读全文
posted @ 2022-05-17 11:40 coyote25 阅读(26) 评论(0) 推荐(0) 编辑
摘要:暴力递归: 1 #include <bits/stdc++.h> 2 3 using namespace std; 4 5 class Solution { 6 public: 7 //定义:index之后的位置选择还没做,前面的已经做了,light存放已经放过灯的位置; 8 //返回能够照亮所有位 阅读全文
posted @ 2022-05-06 16:40 coyote25 阅读(21) 评论(0) 推荐(0) 编辑
摘要:#include <bits/stdc++.h>using namespace std;class Solution{public: string winner1(int n ){ if(0<=n && n<= 4) return (n==0 ||n==2 )?"hou":"xian"; int b 阅读全文
posted @ 2022-05-06 11:29 coyote25 阅读(30) 评论(0) 推荐(0) 编辑
摘要:#include <bits/stdc++.h>using namespace std;const int MaxNode = 26;struct Node { int end; int pass; vector<Node *> nexts; Node() : end(0), pass(0) { n 阅读全文
posted @ 2022-05-05 17:27 coyote25 阅读(23) 评论(0) 推荐(0) 编辑
摘要:排序算法可分为基于比较的排序和线性时间排序(至少要遍历所有元素)。 常见的基于比较排序的算法有:冒泡排序、选择排序、插入排序、归并排序、堆排序、快速排序等。(给数字排序,需要通过两两的数字比较大小,决定他们的顺序的算法) 不基于比较的排序:受限与数据的状况。如计数排序,基数排序,桶排序。 基数排序: 阅读全文
posted @ 2022-05-03 15:47 coyote25 阅读(30) 评论(0) 推荐(0) 编辑
摘要:堆排序有两个操作:1.建堆 2.弹出堆头 大根堆的实现过程: 1 #include <bits/stdc++.h> 2 using namespace std; 3 class HeapSort{ 4 private:int heapsize = 0; 5 public: 6 void Heapso 阅读全文
posted @ 2022-05-03 14:34 coyote25 阅读(21) 评论(0) 推荐(0) 编辑
摘要:题目:https://leetcode-cn.com/problems/couples-holding-hands/ LeetCode 765 02 34 15 67 这样的初始座位我们可以看做:首先一队是情侣是属于一个老大的,同坐一个椅子的,我们也认为他是属于一个老大;(即同属一个连通域) 最后输 阅读全文
posted @ 2022-05-02 17:09 coyote25 阅读(33) 评论(0) 推荐(0) 编辑