摘要: 206. 反转链表 - 力扣(LeetCode) (leetcode-cn.com) 思路: /** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } */ fun 阅读全文
posted @ 2022-04-24 15:40 SoutherLea 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 141. 环形链表 - 力扣(LeetCode) (leetcode-cn.com) 思路 1 快慢指针: 1. 设置两个指针,一个一次走一步,一个一次走两步。 2. 如果这个链表有环,那么快指针就一定会在某一个节点从后面追上慢指针。 3. 如果快指针可以指向nil, 那么这个链表就不是一个环形链表 阅读全文
posted @ 2022-04-24 14:18 SoutherLea 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 234. 回文链表 - 力扣(LeetCode) (leetcode-cn.com) 思路 1 用栈: 1.先将head从头到尾都压入栈。 2.依次从栈中取出节点,和head及其后续节点进行比较。 3.如果从前向后第x节点和从后向前第x节点的值不相同,则这个链表不是回文链表。 func isPali 阅读全文
posted @ 2022-04-22 15:50 SoutherLea 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 94. 二叉树的中序遍历 - 力扣(LeetCode) (leetcode-cn.com) 思路1 递归: 1.我印象中的“中序遍历是先访问左子树,再访问根节点,再访问右子树”。这样的描述有点模糊, 2.实际上前、中、后序遍历,都是先访问根节点,再访问它的左子树,再访问它的右子树。 3.它们之间的区 阅读全文
posted @ 2022-04-22 15:29 SoutherLea 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 70. 爬楼梯 - 力扣(LeetCode) (leetcode-cn.com) 思路 动态规划: 【转载】动态规划五部曲: 1.确定dp[i]的下标以及dp值的含义: 爬到第i层楼梯,有dp[i]种方法; 2.确定动态规划的递推公式:dp[i] = dp[i-1] + dp[i-2]; 3.dp数 阅读全文
posted @ 2022-04-22 11:03 SoutherLea 阅读(18) 评论(0) 推荐(0) 编辑
摘要: Golang的常用常量 更多的内容可以查看golang 源码 Package math - The Go Programming Language (google.cn) const ( MaxInt = 1<<(intSize-1) - 1 MinInt = -1 << (intSize - 1) 阅读全文
posted @ 2022-04-21 16:04 SoutherLea 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 53. 最大子数组和 - 力扣(LeetCode) (leetcode-cn.com) 思路1 贪心: 1. 创建两个变量,一个存储遍历过程中最大子数组和historyMax,一个存储前面元素的子数组和preMax 。 2. 为这两个值historyMax和preMax赋予int的最小值。 3.对n 阅读全文
posted @ 2022-04-21 14:59 SoutherLea 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 21. 合并两个有序链表 - 力扣(LeetCode) (leetcode-cn.com) 思路1 递归: 1.首先判断两个链表中是否有空链表,如果有则返回另一个。如果都是空,则返回那个都可以了。 2.然后比较两个节点的值,如果list1的值小于list2的值,则list1的下一个节点和list2继 阅读全文
posted @ 2022-04-21 12:00 SoutherLea 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 20. 有效的括号 - 力扣(LeetCode) (leetcode-cn.com) 思路: 1.先将符号的对应关系写入到map中。 2.使用slice模拟栈。 3.遍历字符串,如果发现左符号,就将其写入栈中。 4.如果发现右符号,则去判断栈顶是否为对应的左符号。如果是,则将左符号出栈。如果不是,返 阅读全文
posted @ 2022-04-21 10:55 SoutherLea 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 13. 罗马数字转整数 - 力扣(LeetCode) (leetcode-cn.com) 思路: 1. 将所有罗马符号对应的值都写入到map中,然后声明结果变量。 2. 遍历整个字符串,如果当前的字符元素对应值小于右侧元素对应值,结果变量减去当前元素值。 3. 如果当前元素不小于右侧元素值,结果变量 阅读全文
posted @ 2022-04-21 10:03 SoutherLea 阅读(19) 评论(0) 推荐(0) 编辑