- 博客(9)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 正则表达式
int m = s.length(), n = p.length(); vector<vector<bool> > dp(m + 1, vector<bool> (n + 1, false)); dp[0][0] = true; for (int i = 0; i <= m; i++) ...
2018-05-30 00:19:23 219
原创 leetcode 回文数
class Solution {public: bool isPalindrome(int x) { if (x < 0) { return false; } int temp = x; int temp2 = 0; while(temp) { temp2...
2018-05-23 23:40:19 209
原创 字符串转整数 (atoi)
class Solution {public: int myAtoi(string str) { int64_t ans = 0; int first = 0; for (auto ch : str) { if (first == 0 && ch == ' ') { ...
2018-05-23 00:16:20 207
原创 Z字形变换 leetcode
class Solution {public: string convert(string s, int numRows) { int len = s.size(); string ans; if (numRows <= 1) return s; for (int i = 0 ; i < numRows; i...
2018-05-17 00:12:37 375
原创 最长回文子串 leetcode
class Solution {public: string longestPalindrome(string s) { string mana_str = "$#"; if (s.size() <= 1) { return s; } for (auto str : s) { ...
2018-05-16 00:23:29 188
原创 两个排序数组的中位数
给出两个有序数组nums1, nums2, 求 nums1 + nums2的中位数, 并且时间复杂度要求0(log(n+m)) 思路: 时间复杂度log,并且数组有序, 所以进而可以想到用二分的方法。 由于数组有序。那么假设我们将数组合并排序,那么中位数 应该是[(n+m-1)/2 + (n+m)/2]/2 或者 (n+m)/2 那么也就是说 假设第一个数组 取 k 个数,那么第二个数组...
2018-05-15 00:16:15 808
原创 无重复字符的最长子串
思路: 寻找每个字符串的起点位置,也就是每个子串中,最位置最靠后的出现过不止一次的字符。class Solution {public: int lengthOfLongestSubstring(string s) { if(s.size() == 0) return 0; map<char, int> last_pos; ...
2018-05-09 23:03:26 110
原创 leetcode
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* ad...
2018-05-08 22:55:44 117
原创 两数之和
unordered_map 时间 o(n) unordered_map 底层采用hash 表,元素无序,查找时间复杂度 O(1) 二分:排序小,查找 O(nlogn) 遍历:n^2unorderd_map 与 map 比较 unordered_map 底层 hash 表, map 底层红黑树#include <map>class Solution {pub...
2018-05-07 23:02:16 193
iOS app 模拟器图片显示不全
2016-01-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人