02 2021 档案

摘要:给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明: 叶子节点是指没有子节点的节点。 func pathSum(root *TreeNode, sum int) [][]int { ret := [][]int{} path := []int{} dfs(&r 阅读全文
posted @ 2021-02-26 15:41 布尔先生 阅读(116) 评论(0) 推荐(0) 编辑
摘要:给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表。 func mergeKLists(lists []*ListNode) *ListNode { if len(lists)==0{ return nil } if len(lists) == 1{ 阅读全文
posted @ 2021-02-26 15:29 布尔先生 阅读(182) 评论(0) 推荐(0) 编辑
摘要:给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 func spiralOrder(matrix [][]int) []int { if len(matrix) == 0 { return []int{} } dir := 1 row, col := 阅读全文
posted @ 2021-02-26 15:27 布尔先生 阅读(209) 评论(0) 推荐(0) 编辑
摘要:给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 func maxSubArray(nums []int) int { if len(nums)==1{ return nums[0] } dp := make([]int,len(nums)) d 阅读全文
posted @ 2021-02-26 15:21 布尔先生 阅读(160) 评论(0) 推荐(0) 编辑
摘要:给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。 func addStrings(num1 string, num2 string) string { nb1, nb2 := []byte(num1), []byte(num2) if len(nb1) < len(nb2) { 阅读全文
posted @ 2021-02-26 15:15 布尔先生 阅读(1128) 评论(0) 推荐(0) 编辑
摘要:给定一个二叉树,返回其节点值的锯齿形层序遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。 /** * Definition for a binary tree node. * type TreeNode struct { * Val int * Left *TreeN 阅读全文
posted @ 2021-02-26 15:12 布尔先生 阅读(177) 评论(0) 推荐(0) 编辑
摘要:编写一个程序,找到两个单链表相交的起始节点。 func getIntersectionNode(headA, headB *ListNode) *ListNode { curA,curB := headA,headB for curA != curB { if curA == nil { // 如果 阅读全文
posted @ 2021-02-26 15:11 布尔先生 阅读(103) 评论(0) 推荐(0) 编辑
摘要:给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 阅读全文
posted @ 2021-02-26 15:00 布尔先生 阅读(332) 评论(0) 推荐(0) 编辑
摘要:给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。 注意:答案中不可以包含重复的三元组。 func threeSum(nums []int) [][]int { sort.Ints( 阅读全文
posted @ 2021-02-26 14:17 布尔先生 阅读(234) 评论(0) 推荐(0) 编辑
摘要:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 解法:双指针 func lengthOfLongestSubstring(s string) int { start 阅读全文
posted @ 2021-02-26 14:14 布尔先生 阅读(180) 评论(0) 推荐(0) 编辑
摘要:题目: 有一个整数数组,请你根据快速排序的思路,找出数组中第K大的数。 给定一个整数数 输入 [1,3,5,2,2],5,3 返回值 给定数组a,同时给定它的大小n和要找的K(K在1到n之间),请返回第K大的数,保证答案存在。 解法1:快排 func findKth( a []int , n int 阅读全文
posted @ 2021-02-26 14:03 布尔先生 阅读(502) 评论(0) 推荐(0) 编辑
摘要:题目描述 设计LRU缓存结构,该结构在构造时确定大小,假设大小为K,并有如下两个功能 set(key, value):将记录(key, value)插入该结构 get(key):返回key对应的value值 [要求] set和get方法的时间复杂度为O(1) 某个key的set或get操作一旦发生, 阅读全文
posted @ 2021-02-25 22:58 布尔先生 阅读(109) 评论(0) 推荐(0) 编辑
摘要:题目描述 给定一个数组,请你编写一个函数,返回该数组排序后的形式。 示例1 输入 复制 [5,2,3,1,4] 返回值 复制 [1,2,3,4,5] func MySort( arr []int ) []int { // write code here if len(arr) < 2{ return 阅读全文
posted @ 2021-02-25 22:54 布尔先生 阅读(130) 评论(0) 推荐(0) 编辑
摘要:题目描述 题目:链表翻转。给出一个链表和一个数k,比如链表1→2→3→4→5→6,k=2,翻转后2→1→4→3→6→5,若k=3,翻转后3→2→1→6→5→4,若k=4,翻转后4→3→2→1→5→6 例如: 给定的链表是1\to2\to3\to4\to51→2→3→4→5 对于 \ k = 2 k= 阅读全文
posted @ 2021-02-17 12:42 布尔先生 阅读(183) 评论(0) 推荐(0) 编辑
摘要:题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 解法: func reConstructBinary 阅读全文
posted @ 2021-02-17 09:53 布尔先生 阅读(90) 评论(0) 推荐(0) 编辑
摘要:回家想重新学习下go的源码,然后在win上安装问题多多,遂整理一下 一、Go安装包下载地址: 国情原因 https://golang.org/ 偶尔会访问不了,新手要下载 Go 官方的提供的安装包经常会受阻。解决方法是使用可信任的其他镜像进行下载,推荐这两个: https://golang.goog 阅读全文
posted @ 2021-02-16 10:46 布尔先生 阅读(2443) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示
🚀
回顶
收起