不经历怎么能成长
不经历怎么能成长
全部文章
题解
归档
标签
去牛客网
登录
/
注册
不经历怎么能成长的博客
全部文章
/ 题解
(共128篇)
数组中的逆序对(归并排序)
/* 归并排序 A的逆序对 + B的逆序对 + A和B混合在一起的逆序对。 merge_sort_(vt, l, mid);求出逆序对的对数,并对他们排序 merge_sort_(vt, mid +1, r); merge_(vt, l, mid, r);根据两个已经有序的块,求它们之间的逆序对。 ...
2021-03-13
0
571
两个链表的公共节点(让链表等长,遍历两个表头)
/* 你要做的事情是 写代码 增加链表长度使A,B两个链表长度相同。 A+B = B+A 。 多遍历一次链表。从A链表开始遍历完后遍历B链表 同理B链表 遍历完后遍历A链表。 直到找到同一个指针。 */ class Solution { public: ListNode* FindFirst...
2021-03-13
0
486
丑数(由质因子生成数)
只包含质因子2,3,5。此数表示为:判断数的大小值依次递增x,y,z的值。 class Solution { public: int GetUglyNumber_Solution(int index) { if(index <= 0)return 0; ...
2021-03-12
0
435
整数中1出现的次数(讨论最低位为1,0,>1)
当n = 216; 个位上为1,216/10 + 1 * 1即01,11,21,..201; 211; 十位上为1:设x代表一个(0-9)的数字。先不考虑210-216上十位的1。 在1x-11x个位上可以取0-9即(21/10)*10。 最后考虑21X的情况,因为X不一定能取到0-9。即2...
2021-03-12
1
454
把数组排成最小的数(数字转化为字符串排序)
/* to_string:int double 等类型转化为string 根据两个数顺序的大小进行排序 */ class Solution { public: string PrintMinNumber(vector<int> num) { string ans...
2021-03-10
0
462
两数之和(哈希表 /unordered_map)
/* unordered_map<int, int> mp mp.find(val)!=mp.end() mp.count(val)!=0 */ class Solution { public: /** * * @param numbers int整型vec...
2021-03-08
1
753
连续子数组最大和(*max_element())
/* 简单dp dp[i]:以array[i]结尾的数组和; 两种状态:要么选择前面dp[i-1],要么不选,取最大值, dp[i] = max(dp[i-1]+ array[i], array[i]) *max_element():求数组中最大值 */ class Solution { publi...
2021-03-07
1
647
数组中超过一半的数字(unordered_map/贪心)
/* total 标记是否需要替换数字 最大贪心,前面为一半不一样数字,后面为超过一半的相同数字,最终记录的数字为最多的那个 因此如果超过一半数字存在,无论如何排列最终都会记录下排列最多的数字。 但是最后还要遍历数组看是否超过一半。 当比较下一个数字时,total 为 0时候替换数字为当前数字。 时...
2021-03-06
0
485
字符串的排列(set&递归)
/* 递归:f(s,pos),从pos开始到字符串末尾进行种类获取 每层递归确定一个字符,注意递归结束要返回原位置,防止重复,错误 用set集合存储自动把重复的删除且排序。 return {} vector<string>(ret.begin(), ret.end()) insert()...
2021-03-06
0
600
二叉搜索树与双向链表(中序遍历)
/* convert : 链表化子树,并返回头指针 last : 记录链表化的尾节点 按照中序遍历顺序赋值; 当前节点指向其前驱节点 root->left = last; 前驱节点指向当前节点 last->right = root; */ class Solution { public...
2021-03-06
0
483
首页
上一页
4
5
6
7
8
9
10
11
12
13
下一页
末页