07 2018 档案
摘要:1、题目描述 2、问题分析 这个题本质上还是按照链表翻转的思路来解,只是需要添加一些细节判断。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 对两个节点进行交换操作 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 首先数出链表中的元素个数count,然后对k = k % count 求余数。接着将链表形成一个环,从最后一个元素开始,运动 count - k 步,此时节点的下一个节点就是结果的头节点。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 将链表拆分成两个,奇数节点形成一个链表,偶数节点形成另外一个链表,最后将偶数节点链表加在奇数节点链表后面。 3、代码
阅读全文
摘要:1、问题描述 2、问题分析 将句子拆分成单词,然后放入vector中,对每一个单词做改变,最后连成句子返回。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 对于链表中的每一个元素,找到其后面和它不相等的第一个元素,然后指向该元素。 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 题目要求合并有序的两个链表,要求不能额外申请空间。 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 首先将输入句子拆分成单词,在这个过程中将所有大写字母变换成小写字母,将每一个单词作为一个字符串放入一个 map<string,int> 容器中,最后遍历容器,查找出现次数最多且没有在banned中出现的字符串。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 遍历一次数组,以每个1 为起点向后数,数到0 时比较当前1的个数和最大1 的个数,然后将遍历的起点放到当前0 的后面。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 将数组中的元素 A[i] 放到 A[ A[i] - 1] 的位置。然后遍历一边数组,如果不满足 A[i] == i+1,则将A[i]添加到 结果中。 3、代码
阅读全文
摘要:1、题目描述 2.问题分析 使的 A[i] = i+1 ,最后检查不满足这个条件的i+1 .即为缺失的值。 3.代码
阅读全文
摘要:1、题目描述 2、问题分析 直接旋转字符串A,然后做比较即可。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 可以使用递归的方法解决,参考了别人的答案才写出来的。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 使用hashtable 的方法做,解法不是最优的,思路简单直观。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 使用hashTable 寻找,target - num[i] ,将时间复杂度降低到 O(n); 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 使用快慢指针方法判断链表是否有环,然后寻找环开始的节点。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 使用快慢指针方法,一个快指针,一个慢指针,如果到某个时候,快指针追上了慢指针,则说明有环存在。 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 根据 happy number 的 性质,如果循环7次还没有到达 1,则这个数不是happy number . 3、代码
阅读全文
摘要:1、问题描述 2、问题分析 循环拆分数字,然求和判断。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 将数值转换为二进制,然后将前面的 0 去掉,再遍历一边二进制字符串,对每个字符和其后部的字符进行比较。 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 使用 C++的 bitset 库进行操作; 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 从头遍历字符串,使用一个局部迭代器和局部变量记录该字符个数。如果个数>= 3 ,则将此时的迭代器位置和局部迭代器的位置保存到局部vector中。再将这个局部vector 保存到 最终的结果vector中。 3、代码
阅读全文
摘要:1、题目描述 2、分析 遍历字符串,使用C++ 的 标准库函数 isalpha() 判断字符是否为 字母,然后对其做 tolower() . 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 在数组的首尾各加入INT_MIN ,然后遍历数组。 3、代码
阅读全文
摘要:1 题目描述 2、问题分析 直接从后向前遍历,找到 A[i] > A[i-1] 即可。 3.代码
阅读全文
摘要:1、题目描述 2、问题分析 直接按照加法运算规则运算即可,注意进位问题。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 按照手算乘法的过程进行计算,首先计算乘法,然后计算加法。 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 使用string 的逆向指针,做二进制加法,注意进位问题就可以。 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 从后向前做加法,等于10则进位,否则直接加1 ,返回 digits; 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 使用bitset 类的方法 3、代码
阅读全文
摘要:1、题目描述 2.问题分析 使用C++ 标准库的 bitset 类,将整数转换为 二进制,然后将二进制表示转换为字符串,统计字符串中 1 的个数即可。 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 使用C++ 标准库中的 bitset 类,将整数转换为二进制形式,然后再将其转换为字符串,最后比较字符串。 3、代码
阅读全文
摘要:1、题目描述 2、解法分析 首先,使用 ' . ' 号分隔的version 每两个点号之间的数字就是数值,使用 vector<string> 将每个version 字符串中的字符串摘取出来,然后对比对应的字符串表示的数字大小,本题使用 C++ 标准库中 stoi() 函数,将string 转换为数字
阅读全文
摘要:1、题目描述 2、题目分析 将words 中的每一个string 直接翻译成对应的Morse 码,然后将其放入 set 中,最后返回set的大小即可,此处利用的set 中元素不重复的性质。 3.代码
阅读全文
摘要:1、题目描述 2、题目分析 使用C++的迭代器 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 对该问题,要找最小元,可以从后向前遍历,只要前一个元素大于当前元素,说明当前元素就是最小元。 3、代码
阅读全文
摘要:1、题目描述 2、题目描述 直接申请内存,转置即可。 3、代码
阅读全文
摘要:1、题目描述 2.问题分析 直接是用hash table 解决问题 3、代码
阅读全文
摘要:1、题目描述 2、问题分析 使用unordered_set 将链表A中的节点地址全部插入,然后使用链表B中的每个节点在A中查找。 3、代码
阅读全文
摘要:1、题目描述 2、分析 首先将链表翻转,然后做加法。 最后将结果链表翻转。 3、代码
阅读全文
摘要:1、题目描述 2、题目描述 题目思路可以参考合并单链表的思路,定义一个全局 进位标志,如果两个数值相加得到需要进位,则将进位标志置为1 。 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 比较两个字符串中加入的一个字符,由于可能在字符串中加入一个已经存在的字符,因此使用hash table 去统计字符个数最好。 3、代码
阅读全文
摘要:1、题目描述 2、分析 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 将 [ 0 , n ]之间的整数放到 n 个元素的数组中去,必然缺失一个元素。在一次遍历中,将元素n[i] 放到 n[ n[i] ] ,位置。最后检查元素值和下标不相等的情况。 3、代码
阅读全文
摘要:1、问题描述 2、题解思路 本题的思路是对于数组中每个正的元素,应该将其放到数组中对应的位置,比如元素1 ,应该放在数组的第一个位置。以此类推,最后检查数组中元素值和下标不匹配的情况。 3、代码
阅读全文
摘要:1、题目描述 2、题目分析 首先,这个题可以使用暴力解法,时间复杂度是O(n^2),这个显然是最容易的做法,但是效率不够高,题目提供了一种解法,使用两个指针,一个从头向尾部,另外一个从尾部向头部,每一步寻找最大的面积,然后较小的一边向前移动。 3、代码实现
阅读全文

浙公网安备 33010602011771号