算法
FoGoiN
这个作者很懒,什么都没留下…
展开
-
【题记】丑数
class Solution { public: int GetUglyNumber_Solution(int index) { if(index<=0) return 0; int dp[index]; dp[0]=1; //是第一个丑数 int a=0; //权值为2 int b=0; //权值为3 int c=0; //权值为5 for(int i...原创 2021-09-21 17:18:19 · 93 阅读 · 0 评论 -
引用与指针的区别
概叙 引用是对指针的封装。作用是对变量取别名,访问和修改它的值。 1、使用方法 注意事项: 引用必须直接初始化 形参列表引用没有直接初始化(在函数调用时初始化) 引用一旦初始化 不能更改引用对象(不能指向其他对象) 从一而终对引用对象的操作,直接影响其目标对象 int a = 10; int& r1 = a,r2;//此处r2是int类型 int* p1,p2; int& r = 10;//错误 10是常量 const int&r = 10; //可...原创 2021-09-20 15:52:51 · 142 阅读 · 0 评论 -
【题记】旋转数组的最小数字
思路: 首先我们观察题目要求时间复杂度为logn,又是一个半有序序列此时我们就应该联想到折半查找查找半有序序列。 int minNumberInRotateArray(int* rotateArray, int rotateArrayLen ) { // write code here int left = 0; int right = rotateArrayLen-1; int mid; while(left<ri...原创 2021-09-19 11:04:17 · 100 阅读 · 0 评论 -
牛客网 重排链表
思路: 首先既然不能改变值,那么只能尝试改变next指向,但我们这个时候要知道链表的单向性,如果尝试访问最后端点,则前面的值无法再访问,重启链表只会浪费时间。 因此想到要使用线性方式进行运算! class Solution { public: void reorderList(ListNode *head) { if(head==NULL || head->next==NULL||head->next->next==NU...原创 2021-09-19 10:35:00 · 138 阅读 · 0 评论