go题解
go题解
全部文章
题解
归档
标签
去牛客网
登录
/
注册
go题解的博客
正道成功
全部文章
/ 题解
(共9篇)
GO题解 | #删除链表的倒数第n个节点#
go解题答案 时间复杂度O(n) 思路概括:双指针 思路核心:1、先计算链表长度2、再找到要删除的节点前一个,然后删除func removeNthFromEnd( head *ListNode , n int ) *ListNode { // write code here size:=...
算法
go
题解
入门
双指针
2021-05-20
0
535
GO题解 | #二分查找-II#
go解题答案 时间复杂度O(n) 思路概括:首位指针遍历 思路核心:1、首位指针做循环条件,middel做比较2、找到后用一个for循环找到最靠前的索引func search( nums []int , target int ) int { if len(nums)==0{ re...
算法
go
题解
入门
双指针
2021-05-19
0
454
GO题解 | #合并两个有序的数组#
来自专栏
go解题答案 时间复杂度O(m+n) 思路概括:双指针两两比较 思路核心:1、从大到小,从后往前两两比较,大的赋值给原数组1func merge( A []int , m int, B []int, n int ) { // write code here if len(A)==0 &...
算法
go
题解
入门
双指针
2021-05-08
1
599
GO题解 | #判断链表中是否有环#
来自专栏
go解题答案 时间复杂度O(n) 思路概括:双指针 思路核心:1、fast=nil的时候证明没有环func hasCycle( head *ListNode ) bool { if head==nil || head.Next==nil{ return false } sl...
算法
go
题解
入门
双指针
2021-05-06
1
660
GO题解 | #数组中相加和为0的三元组#
来自专栏
go解题答案 时间复杂度O(n^2) 思路概括:先排序,降低难度,去重只判断和上一个是否相等即可 思路核心:1、因为要找全部的不重复解,所以 (1、每组解的索引都是递增的,即索引abc, a<b b<c (2、固定a指针,去求bc指针,固定b指针求c,如果bc一起找,则去重很...
算法
排序
go
题解
入门
双指针
2021-04-23
1
554
GO题解 | #最长无重复子串#
来自专栏
go解题答案 思路概括:将子串长度看成双指针维护窗口最大问题 思路核心:1、子串长度可以是用两个指针维护一个最大窗口长度2、遇到重复,更新start指针,要取历史最大值3、每次判断是否更新max值和更新重复的最大值func maxLength( arr []int ) int { // wri...
算法
go
题解
子串
双指针
2021-04-20
0
575
GO题解 | #容器盛水问题#
来自专栏
go解题答案 思路概括:首位双指针像中间遍历计算值 思路核心:1、比较2个指针,左右比低的为端点2、两个个端点构成一个容器,从左面或者右面(从端点小的一边计算)向两端找容器并计算水量,3、计算蓄水量:一个容器内,蓄水量=两端中低点-去其他更低的4、如果找到比端点高的,证明可能又是一个端点,所以需要...
算法
go
题解
入门
双指针
2021-04-20
0
480
GO题解 | #排序#
来自专栏
go解题答案 思路概括:默认最左为边界,先从右边找小,再从左边找大 思路核心:1、pattition做交换,quickSort构造递归结构2、默认最左为边界,先从右边找小,再从左边找大,没找到自己指针移动,找到交换,对方指针移动3、循环结束要恢复边界值 func MySort( arr []in...
算法
递归
go
题解
入门
双指针
详解
2021-04-14
0
432
GO题解 | #链表中倒数第k个结点#
来自专栏
go解题答案 思路概括:双指针 思路核心:双指针法:倒数第k个,就是正数n-k个func FindKthToTail( pHead *ListNode , k int ) *ListNode { // write code here if pHead==nil { retur...
算法
go
题解
入门
深入
双指针
详解
2021-04-10
1
515