![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
长风Qiu
A Linux C++ Programmer.
展开
-
[LeetCode]1.Two Sum
原题题解:简单哈希表代码func twoSum(nums []int, target int) []int { var result []int m := make(map[int]int) for i, v := range nums { if prev_idx, ok := m[target-v]; ok { resul...原创 2019-02-14 19:54:24 · 156 阅读 · 0 评论 -
[LeetCode]2. Add Two Numbers
原题题解:链表模拟加法,注意进位特殊处理代码:/** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } */func addTwoNumbers(l1 *ListNode, l2 *ListNode) *ListNode { ...原创 2019-02-15 15:59:29 · 169 阅读 · 0 评论 -
[LeetCode]3. Longest Substring Without Repeating Characters
题解:直观上能想到肯定有复杂度为O(N)的算法,肯定是要遍历一次字符串,肯定要记录当前字符的位置,每遍历一个字符统计一下当前达到的最大子串长度,需要记录左边界的位置,并实时更新。代码:func lengthOfLongestSubstring(s string) int { result := 0 var m [256]int left := 0 f...原创 2019-02-15 18:10:06 · 115 阅读 · 1 评论 -
[LeetCode]5. Longest Palindromic Substring
题解:遍历字符串,以每个字符为回文串的中心,对于aabbaa这种形式,将bb合并,这样就可以统一处理代码:func longestPalindrome(s string) string { len := len(s) if len <= 1 { return s } var maxLen, maxLeft, maxRight int ...原创 2019-02-15 22:51:33 · 122 阅读 · 0 评论 -
[LeetCode]6. ZigZag Conversion
热身练手题func convert(s string, numRows int) string { if numRows <= 1 || len(s) <= numRows { return s } var result []byte // 字符串拼接 var kGroupSize = numRows * 2 - 2 len := ...原创 2019-02-16 09:53:29 · 108 阅读 · 0 评论 -
[LeetCode]8.String to Integer (atoi)
由于负数范围比正数大,所以中间结果用负数保存func myAtoi(str string) int { startPos, mark := func(str string) (int, int) { mark := 1 for i := 0; i < len(str); i++ { if unicode.IsSpace(rune(str[i])) { continu...原创 2019-03-05 15:25:26 · 286 阅读 · 0 评论 -
[LeetCode]9. Palindrome Number
func isPalindrome(x int) bool { if x&lt;0 || (x!=0 &amp;&amp; x%10==0) { return false } sum := 0 for sum &lt; x { sum = sum*10 + x%10 x /= 10 } ret...原创 2019-03-06 11:35:19 · 199 阅读 · 0 评论