算法
文章平均质量分 66
没有名字的小小怪物
这个作者很懒,什么都没留下…
展开
-
动态规划,背包问题等
动态规划基本步骤: 1 确定dp,确定含义; 2 确定递推公式; 3 确定dp初始化; 4 确定遍历顺序; 一维dp例题1:; leetcode746 //1dp[i]表示到达i阶梯时最小支付花费; //2 dp[i] = min(dp[i-2]+cost[i-2],dp[i-1]+cost[i-1]);因为能到达第i个楼梯 //肯定是从i-1或者i-2阶梯来的。 //3 dp[0]=0;dp[1]=0; //4 从小到大; int minCostClimbingStairs(vector<int&原创 2022-03-22 10:40:11 · 1605 阅读 · 0 评论 -
数据结构知识
bit数组 //bit数组指的是相比于一般数组每一位上都是1bit,如何实现? //利用int数组拆分实现 int arr[10];//10x4x8=320bit int i = 144;//第i位 //如何拿到第i位的状态? int numindex = i/32; int moveindex = i%32; int state = ((arr[numindex]>>moveindex) &1); //如何将第i位改为1? arr[numindex] = arr[numindex]|(原创 2022-03-18 17:05:20 · 306 阅读 · 0 评论 -
图相关的算法总结
图的表示:邻接矩阵,邻接表 目标:在一种图的表示上实现图的所有算法,在实际遇到,就只需要考虑怎么从一种图的表示转换到我们的表示上 struct Node { int value;//类型根据实际变化 int in;//入度 int out;//出度 vector<Node> nexts;//当前节点的邻居有哪些,在有向图中,由当前节点指向他们 vector<Edge> edges;//属于当前节点的边有哪些,由当前节点指向其他 Node(int value){ thi原创 2021-11-02 10:30:55 · 222 阅读 · 0 评论 -
判断两个可能有环的链表相交问题
①链表是否有环判断,有环则返回第一个入环节点? 方法:设置两个指针,快指针一次走两步,慢指针一次走一步,若快指针走到空节点,则说明无环,否则,等到两个指针在环内相遇,将快指针指向头节点,两个节点同时开始一次走一步,一定会在入环处相遇。 Node* getLoopNode(Node* root) { if (root == nullptr || root->next == nullptr || root->next->next == nullptr) return nullptr;原创 2021-09-17 11:14:16 · 180 阅读 · 0 评论 -
常见排序总结
//实现一个数组指定两个位置交换 /*void swap(vector<int>& arr,int a,int b){ arr[a] = arr[a]^arr[b]; arr[b] = arr[a]^arr[b]; arr[a] = arr[a]^arr[b]; //现在有i,j,i=i^j; j = (i^j)^j = i; i = (i^j)^i=j,就实现了交换。 //但是有一个致命缺点,若两个数来自同一个地址,则会清零。 }*/ //补充几个异或规则, // 0 ^ m原创 2021-09-09 12:03:22 · 163 阅读 · 0 评论 -
回溯法的一些心得
回溯法,⼀般可以解决如下⼏种问题: 排列,组合问题,满足某种条件的全部子集,即需要穷举才能完成的任务就可能需要回溯。 排列有序,组合无序 回溯的一般模板 void back(参数) { if (End condition) { //Processing result; return; } for (dataset) { //Processing data(比如储存); back(参数); // 递归 //revoke processing(如删除本次储存) }原创 2021-08-27 10:45:54 · 1042 阅读 · 0 评论 -
二叉树的一些做题心得
满二叉树:如果一棵二叉树只有度为0的结点和度为2的结点,并且度为0的结点在同一层上,则这棵二叉树为满二叉树。 完全二叉树:在满二叉树的基础上,从最底层到上层的顺序下,在每一层的从右到左依次剪枝,无论剪掉多少个,多少层,剩下的就是完全二叉树(当然只有下层全部剪掉了,才能在上层按顺序剪枝。) 二叉搜索树:二叉搜索树的每个结点上有数值,二叉搜索树是一个有序树。 ××若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; ××若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; ××它的左、右子树原创 2021-07-27 10:44:45 · 477 阅读 · 0 评论