LeetCode_Algorithm
文章平均质量分 66
去怀
葛老师说,要努力积累,才能变强,乃至变成巨无霸。
展开
-
LeetCode_#1_Two_Sum
class Solution {public: vector<int> twoSum(vector<int>& nums, int target) { vector<int> target_series; int len = nums.size(); for(int i=0;i<len;i++){ ...原创 2018-04-30 22:18:09 · 120 阅读 · 0 评论 -
LeetCode_#19_Remove_Nth_Node_From_End_of_List
class Solution {public: ListNode * removeNthFromEnd(ListNode* head, int n) { ListNode* ptr = head; int len = 1; while (ptr->next != NULL) { len++; ptr = ptr->next; } ListNode*...原创 2019-09-14 18:37:32 · 110 阅读 · 0 评论 -
LeetCode_#20_Valid_Parentheses
很简单,用栈就可以了…class Solution {public: bool isValid(string s) { int len = size(s); if (len == 0)return true; stack<char> re; for (int i = 0; i < len; i++) { if (re.empty()) { ...原创 2019-09-14 19:39:43 · 87 阅读 · 0 评论 -
LeetCode_#21_Merge_Two_Sorted_Lists
就这破玩意儿我写了好几遍,可见基本功太差劲儿啊,药丸!class Solution {public: ListNode * mergeTwoLists(ListNode* l1, ListNode* l2) { if (l1 == nullptr&&l2 == nullptr) return l1; else if (l1 == nullptr&&...原创 2019-09-14 22:57:13 · 103 阅读 · 0 评论 -
LeetCode_#22_Generate_Parentheses
emmm用递归吧,这都写不出来,真的药丸…class Solution {public: void generateParenthesisDFS(int left, int right, string out, vector<string> &vec) { if (left > right) return; if (left == 0 &&...原创 2019-09-15 14:27:21 · 121 阅读 · 0 评论 -
LeetCode_#23_Merge_k_Sorted_Lists
我太暴力了,其他聪明的算法见https://blog.csdn.net/yutianzuijin/article/details/88598979130/131通过,最后数据量比较大的样例超时了,我十分怀疑是sort()的存在影响了一切。这版代码如下:class Solution {public: ListNode * mergeKLists(vector<ListNode...原创 2019-09-16 23:48:41 · 87 阅读 · 0 评论 -
LeetCode_#25_Reverse_Nodes_in_k-Group
//挺快的但是空间占用率比较高而且感觉写的好麻烦哦orzclass Solution {public: ListNode * reverseKGroup(ListNode* head, int k) { vector<ListNode*> every; ListNode* ptr; ptr = head; while (ptr != NULL) { eve...原创 2019-09-21 22:00:38 · 91 阅读 · 0 评论 -
LeetCode#26RemoveDuplicatesFromSortedArray
//打下划线太麻烦了换一下标题风格//请注意nums.end()返回的是向量最后一个元素的后面那个地址//太坑了//要好好学习class Solution {public: int removeDuplicates(vector<int>& nums) { if (nums.size() == 0) return 0; if (nums.size() ==...原创 2019-09-23 12:49:42 · 117 阅读 · 0 评论 -
LeetCode#27RemoveElement
//答应我不要用二分法写//一口老血吐出来class Solution {public: int removeElement(vector<int>& nums, int val) { if (nums.size() == 0)return 0; if (nums.size() == 1) { if (nums[0] == val)return 0; ...原创 2019-09-23 14:18:17 · 110 阅读 · 0 评论 -
LeetCode#28Implement_strStr()
//就很简单随便写写就行//注意一下当needle为空时要返回啥//出题者有给提示class Solution {public: int strStr(string haystack, string needle) { if (needle.size() == 0)return 0; if (haystack.size() == 0)return -1; if (needl...原创 2019-09-23 22:07:55 · 99 阅读 · 0 评论 -
LeetCode_#18_4_Sum
和之前的3Sum和3SumCloset是一个思路,随便写写就行。class Solution {public: vector<vector<int>> fourSum(vector<int>& nums, int target) { int len = size(nums); sort(nums.begin(),nums.end());...原创 2019-09-14 18:36:26 · 124 阅读 · 0 评论 -
LeetCode_#17_ Letter_Combinations_of_a_Phone_Number
class Solution {public: vector<string> letterCombinations(string digits) { int sz = digits.size(), tvsz; if (sz == 0) return vector<string>(); map<char, vector<char>>...原创 2019-09-14 18:35:09 · 145 阅读 · 0 评论 -
LeetCode_#16_3_Sum_Closet
class Solution {public: int threeSumClosest(vector<int>& nums, int target) { //vector<vector<int>> re; int re; //only one solution && there must be one solution...原创 2019-09-14 18:33:30 · 138 阅读 · 0 评论 -
LeetCode_#2_Add_Two_Numbers
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* addTwoNumber...原创 2018-04-30 22:19:28 · 92 阅读 · 0 评论 -
LeetCode_#3_Longest_Substring_Without_Repeating_Characters
//大致思路就是弄了两个指针,往后滑,调了挺久的还是基本功不扎实啊,看解答似乎用了Hash表,没看太懂咳咳咳,思路好像也就是滑窗吧class Solution {public: int lengthOfLongestSubstring(string s) { if(s.size()==0) return 0; int head=0,tail=0; ...原创 2018-05-01 17:12:37 · 124 阅读 · 0 评论 -
LeetCode_#4_Median_of_Two_Sorted_Arrays
//sorted好像就指升序排列,所以不用再判断是升序还是降序//注意返回类型是double,中位数除以二时应该写成2.0//我的思路非常简单粗暴所以runtime比较长hhh,还是需要优化class Solution {public: double findMedianSortedArrays(vector<int>& nums1, vector<int...原创 2018-05-01 23:51:11 · 156 阅读 · 0 评论 -
LeetCode_#5_Longest_Palindromic_Substring
//好晚了自己竟然没写出来//想起这道题是大一C语言期末考试的一道题莫名悲伤//唉//感谢https://www.cnblogs.com/love-yh/p/7071871.htmlclass Solution {public: string longestPalindrome(string s) { string res=""; int ...转载 2018-05-02 01:52:29 · 137 阅读 · 0 评论 -
LeetCode_#6_ZigZag_Conversion
//思路就是找出zigzag序列每一横行//(一共numRows横行)//中各个字符在原字符串s中下标的间隔是多少//依次输出即可class Solution {public: string convert(string s, int numRows) { if((s.size()<=numRows)||(numRows==1)) return s; ...原创 2018-05-02 17:53:29 · 131 阅读 · 0 评论 -
LeetCode_#7_Reverse_Integer
//思路十分暴力//就是把原带符号数的每一位取出来//再逐个乘10的幂次//要注意的是如何判断溢出//哇判断溢出这个是我心中永远的痛了,从C语言学到数电、数据结构再到计原,我就没学明白过//有人看我博客么,给我通俗易懂的讲讲好么,我现在看到“溢出”两个字就犯怵,但没想到胡诌竟然还把题目做出来了class Solution {public: int reverse(int x) ...原创 2018-05-02 21:54:40 · 100 阅读 · 0 评论 -
LeetCode_#9_Palindrome_Number
//思路,整型转字符串,用stringstream//不然就一位一位搞出来咯class Solution {public: bool isPalindrome(int x) { if(x<0) return false; stringstream ss; ss<<x; int len = (ss.str...原创 2018-05-03 13:34:01 · 89 阅读 · 0 评论 -
LeetCode_#14_Longest_Common_Prefix
class Solution {public: //version_3 string longestCommonPrefix(vector<string>& strs) { int str_num = size(strs); if (str_num == 1) { return strs[0]; } if (str_num == 0) { ...原创 2019-07-29 12:00:24 · 86 阅读 · 0 评论 -
LeetCode_#15_3_Sum
class Solution {public: vector<vector<int>> threeSum(vector<int>& nums) { vector<vector<int>> re; if (size(nums) < 3) return re; if (size(nums) == 3) { ...原创 2019-09-14 18:32:37 · 95 阅读 · 0 评论 -
LeetCode#29DivideTwoIntegers
//题解https://www.cnblogs.com/grandyang/p/4431949.html//关于负数除法的问题https://blog.csdn.net/misayaaaaa/article/details/69802746这个题目太特么坑了,要好好熟悉C++各种整数类型的范围,嗯,要命。...转载 2019-09-24 22:15:58 · 118 阅读 · 0 评论