![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
力扣题解
力扣题解
不听话的小耳朵
这个作者很懒,什么都没留下…
展开
-
uthash使用方法
uthash使用方法1、使用uthash存储整型typedef struct { int id; int count; UT_hash_handle hh; }HashNode;void HashAdd(HashNode **pTable, int id) { HashNode *node = malloc(sizeof(HashNode)); memset(node, 0, sizeof(HashNode)); node->id = i原创 2020-08-22 13:47:40 · 1916 阅读 · 0 评论 -
位运算简单题
面试题 17.01. 不用加号的加法设计一个函数把两个数字相加。不得使用 + 或者其他算术运算符。示例:输入: a = 1, b = 1输出: 2题解:(1)将a和b 同时为 1的位取出来,左移进位(进位值)。(2)取a和b的异或(不同的位)(异或值)(3)将进位值赋值给b,异或值赋值给a, 重复进行(1,2)运算,直到进位值为0,a则为最终结果注意事项:C++对复数左移是未定义行为,左移或者右移时,需要转换为无符号整数进行操作。class Solution {public: in原创 2020-08-02 07:12:28 · 188 阅读 · 0 评论 -
利用数学公式 简单题
面试题 17.04. 消失的数字数组nums包含从0到n的所有整数,但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间内完成吗?题解:利用求和公式,算到0至(n+1)之和,减去所有数字之和。class Solution {public: int missingNumber(vector<int>& nums) { int n = nums.size(); int max = n * (n + 1) >> 1;原创 2020-08-01 10:24:58 · 166 阅读 · 0 评论 -
摩尔投票法 题目
算法解释:想象着这样一个画面:会议大厅站满了投票代表,每个都有一个牌子上面写着自己所选的候选人的名字。然后选举意见不合的(所选的候选人不同)两个人,会打一架,并且会同时击倒对方。显而易见,如果一个人拥有的选票比其它所有人加起来的选票还要多的话,这个候选人将会赢得这场“战争”,当混乱结束,最后剩下的那个代表(可能会有多个)将会来自多数人所站的阵营。但是如果所有参加候选人的选票都不是大多数(选票都未超过一半),那么最后站在那的代表(一个人)并不能代表所有的选票的大多数。因此,当某人站到最后时,需要统计他所选的原创 2020-08-01 09:58:09 · 111 阅读 · 0 评论 -
二叉树简单题
面试题 17.12. BiNode二叉树数据结构TreeNode可用来表示单向链表(其中left置空,right为下一个链表节点)。实现一个方法,把二叉搜索树转换为单向链表,要求依然符合二叉搜索树的性质,转换操作应是原址的,也就是在原始的二叉搜索树上直接修改。返回转换后的单向链表的头节点。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/binode-lcci著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。题解:使用中序遍历原创 2020-08-01 08:56:20 · 180 阅读 · 0 评论 -
力扣简单题集合
@[TOC] 分类题目链接动态规划题目链接: link.原创 2020-08-01 08:01:48 · 228 阅读 · 0 评论 -
动态规划简单题
面试题 17.16. 按摩师一个有名的按摩师会收到源源不断的预约请求,每个预约都可以选择接或不接。在每次预约服务之间要有休息时间,因此她不能接受相邻的预约。给定一个预约请求序列,替按摩师找到最优的预约集合(总预约时间最长),返回总的分钟数。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/the-masseuse-lcci著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。递推方程:f[i][0]:如果第i次接受预约,那么第i-原创 2020-08-01 07:40:17 · 233 阅读 · 0 评论