
leedcode
奈何辰星无可奈
github: hackerchenzhuo
展开
-
leetcode 13.罗马数字转整数
//20.18-20.31 class Solution { public: int romanToInt(string s) { map<char,int> m; m['M']=1000;m['D']=500;m['C']=100;m['L']=50;m['X']=10;m['V']=5;m['I']=1; ...原创 2019-04-26 20:32:57 · 189 阅读 · 0 评论 -
leetcode 14. 最长公共前缀
class Solution { public: string longestCommonPrefix(vector<string>& strs) { int len=0;int flag=1; int Size=strs.size(); if(Size==0) return ""; if(Size==1...原创 2019-04-26 20:59:35 · 314 阅读 · 0 评论 -
leetcode 20. 有效的括号
版本1: class Solution {//回文串问题 public: bool isValid(string s) { int L=s.size();if(L<=0) return true; stack<char> sta; map<char,char> m={{'}','{'},{')','('},{...原创 2019-04-26 21:52:09 · 151 阅读 · 0 评论 -
leetcode 21. 合并两个有序链表
主要就是先把两个链表读出来,放到一个vector数组中,然后排序,生成新链表。 空间利用率并不高(扩充了一倍的空间。) 时间利用率不高(相当于在读取了一遍链表后,重新排序了。实际上只需要一遍遍历就可以完成排序的。) /** * Definition for singly-linked list. * struct ListNode { * int val; * Li...原创 2019-04-27 20:57:13 · 135 阅读 · 0 评论 -
leetcode 2. 两数相加
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode*...原创 2019-04-23 15:26:08 · 140 阅读 · 0 评论 -
leetcode 26. 删除排序数组中的重复项
本来以为自己的代码很简洁,效率很高,但是忘记了,在不使用迭代器的话,每次寻址都是按链表从头遍历,导致效率惨不忍睹。 (本来最开始想的是用空间换时间。) 上代码一: //21.05 class Solution { //easy //空间换时间的典型代表。 public: int removeDuplicates(vector<int>& nums...原创 2019-04-27 21:40:08 · 158 阅读 · 0 评论 -
leetcode 38. 报数
题目描述有点操蛋。 首先解释题目。为什么这道题是简单但差评还是这么多?我觉得问题就在于没有把题目解释清楚上。 1 读 one one 11 不读 one one one one,读 two one, 连着一起相同的数会先说数量再说值。 以上是基础。接下来看怎么得到下一项的结果。从题目所给出的示例4 : 1211 到 5 : 111221。1211 第一位是1,所以读作 one one,也...原创 2019-04-30 22:08:52 · 142 阅读 · 0 评论 -
leetcode 经典二进制求和最佳解决办法【不是最佳时间复杂度,但是简单明了】
class Solution { public: string addBinary(string a, string b) { string res = ""; int c = 0; int i = a.size() - 1; int j = b.size() - 1; while(i >= 0 || ...原创 2019-05-07 14:29:14 · 221 阅读 · 0 评论