当前位置: 首页 > news >正文

长阳网站建设sem账户托管公司

长阳网站建设,sem账户托管公司,wordpress视频播放器代码,广州商城型网站建设前言 今天是刷题的第三天,坚持就是胜利 203.移除链表元素 增加一个头结点,这样可以统一删除操作 另外,遇到等于的值,就让 prev 指向 curr.Next ,同时将curr更新指向 prev.Next。 /*** Definition for singly-linked…

前言

今天是刷题的第三天,坚持就是胜利

203.移除链表元素

增加一个头结点,这样可以统一删除操作
另外,遇到等于的值,就让 prev 指向 curr.Next ,同时将curr更新指向 prev.Next。


/*** Definition for singly-linked list.* type ListNode struct {*     Val int*     Next *ListNode* }*/
func removeElements(head *ListNode, val int) *ListNode {// 思路:增加一个头结点,并且设置一个prev指针,用于删除newHead := &ListNode{}newHead.Next = headprev := newHeadcurr := newHeadfor curr != nil {if curr.Val == val {prev.Next = curr.Nextcurr = prev.Next} else {prev = currcurr = curr.Next}}return newHead.Next
}

707. 设计链表

测试代码,

type Node struct {Val intNext *Node
}type MyLinkedList struct {Size intHead *Node
}func Constructor() MyLinkedList {// 带有虚拟头节点head := &Node{Val: -1,Next: nil,}return MyLinkedList{0, head}
}func (this *MyLinkedList) Get(index int) int {// 判断非法性if (index < 0 || index > (this.Size - 1)) {return -1}node := this.Headfor i := 0; i <= index; i++ {if node == nil {return -1} else {node = node.Next}}return node.Val
}func (this *MyLinkedList) AddAtHead(val int)  {node := &Node {Val: val,Next: nil,}node.Next = this.Head.Nextthis.Head.Next = nodethis.Size++
}func (this *MyLinkedList) AddAtTail(val int)  {node := this.Head// node指向最后一位非nilfor node.Next != nil {node = node.Next}node.Next = &Node{Val: val,Next: nil,}this.Size++
}func (this *MyLinkedList) AddAtIndex(index int, val int)  {if index > this.Size {return }else if index == this.Size { //直接添加到末尾this.AddAtTail(val) return}else if index < 0 {index = 0}// header 指向插入位置的前一位header := this.Headfor i := 0; i <= index - 1; i++ {header = header.Next}node := &Node{val, nil}node.Next = header.Nextheader.Next = nodethis.Size++
}func (this *MyLinkedList) DeleteAtIndex(index int)  {// 判断是否有效if index >= this.Size || index < 0 {return}// header 指向插入位置的前一位header := this.Headfor i := 0; i <= index - 1; i++ {header = header.Next}header.Next = header.Next.Nextthis.Size--
}/*** Your MyLinkedList object will be instantiated and called as such:* obj := Constructor();* param_1 := obj.Get(index);* obj.AddAtHead(val);* obj.AddAtTail(val);* obj.AddAtIndex(index,val);* obj.DeleteAtIndex(index);*/

206. 反转链表

// 使用双指针,pre指向前一个,curr指向当前的,前后调转方向既可。

/*** Definition for singly-linked list.* type ListNode struct {*     Val int*     Next *ListNode* }*/
func reverseList(head *ListNode) *ListNode {// 使用双指针var prev *ListNodecurr := headvar tmp *ListNodefor curr != nil {tmp = curr.Nextcurr.Next = prevprev = curr// curr往后移动一位curr = tmp}return prev
}
http://www.yidumall.com/news/33262.html

相关文章:

  • 网站开发商官网今天
  • 做购票系统网站丈哥seo博客
  • 用框架做网站如何居中信息推广
  • 无锡网站设计公司排名百度搜索推广流程
  • 搜索引擎作弊的网站有哪些网站发帖推广平台
  • 做面膜的网站廊坊网站
  • 九一人才网赣州找工作aso优化贴吧
  • wordpress网站导入数据库seo策略分析
  • 网站站点层叠样式怎么做一站式媒体发稿平台
  • 汕头网站网店建设成品短视频app下载有哪些
  • 在线做效果图有哪些网站有哪些长春网站制作企业
  • 中企动力做网站费用软文街怎么样
  • 做我的狗在什么网站上看电商运营自学全套教程
  • 电子商务网站界面设计实验报告国家免费技能培训平台
  • 做网站的程序员留备份有哪些平台可以发布推广信息
  • vps网站访问不了佛山网站建设正规公司
  • 怎么用ps做网站上的产品图2021国内最好用免费建站系统
  • 猎奇网站源码google学术搜索
  • 网站建设的大公司东莞百度seo新网站快速排名
  • 海淀重庆网站建设免费网站制作app
  • 网站模版修改网赌怎么推广拉客户
  • 做网站需要哪些技术看网站搜索什么关键词
  • 网站怎么做语言切换如何建立网站平台的步骤
  • 上海 专业网站建设网站模板定制
  • 长沙公司网站设计搜索 引擎优化
  • 美食网站程序西安seo整站优化
  • 如何做网站链接分享朋友圈郑州厉害的seo顾问公司
  • 成都网站建设 城网络优化工作应该怎么做
  • 网站一般如何做搜索功能宁波seo外包推广渠道
  • 织梦网站制作教程自媒体发布软件app