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

网站建设哪个好房屋设计师破解版

网站建设哪个好,房屋设计师破解版,小型广告公司简介模板,网站建设需要会什么软件有哪些方面203.移除链表元素(写if的时候,要考虑要不要写else语句) 文章链接:代码随想录 (programmercarl.com) 思路: (1)要操作链表的话,可以设置一个虚拟头节点,从而方便操作 …

203.移除链表元素(写if的时候,要考虑要不要写else语句)

文章链接:代码随想录 (programmercarl.com)

思路:

(1)要操作链表的话,可以设置一个虚拟头节点,从而方便操作

(2)根据题目的要求,如果当前节点的val值是要删除的,那么就让当前节点的前一个节点指向当前节点的后一个节点

(3)使用单指针,遍历链表,找寻cur.next节点的值是否是要删除的节点

实现代码遇到的问题:

(1)循环体里应该是if + else 语句,举例子,如果为[7,7,7,7],循环体里是if语句的话就说出现跳过节点的情况

Java代码:

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode removeElements(ListNode head, int val) {//判断特殊情况if(head == null){return head;}//设置一个虚拟头节点ListNode dummynode = new ListNode(-1);dummynode.next = head;//cur指针ListNode cur = dummynode;//让指针开始遍历链表while(cur != null && cur.next != null){if(cur.next.val == val){cur.next = cur.next.next;}else{cur = cur.next;}}return dummynode.next;}
}

707.设计链表

文章链接:代码随想录 (programmercarl.com)

思路:需要设置虚拟头节点,需要设置链表长度,需要自己定义节点函数

Java代码:

//首先需要自己定义一个节点函数
class ListNode{int val;ListNode next;public ListNode(){}public ListNode(int val){this.val = val;}
}class MyLinkedList {//记录链表节点个数(即链表的长度)int size;//设置一个虚拟头节点,因为有可能删除的节点是头节点ListNode dummynode = new ListNode();public MyLinkedList() {//初始化size = 0;}public int get(int index) {if(index < 0 || index >= size){return -1;}ListNode cur = dummynode;for(int i = 0; i <= index;i++){cur = cur.next;}return cur.val;}public void addAtHead(int val) {addAtIndex(-1,val);}public void addAtTail(int val) {addAtIndex(size,val);}public void addAtIndex(int index, int val) {//如果index大于链表长度,直接returnif(index > size){return;}else{ListNode node = new ListNode(val);ListNode cur = dummynode;//让cur指向index的前一个节点for(int i = 0; i < index && cur != null;i++){cur = cur.next;}ListNode temp = cur.next;cur.next = node;node.next = temp;//长度加1size++;}}public void deleteAtIndex(int index) {//先判断特殊情况if(index < 0 || index >= size){return;}ListNode cur = dummynode;//找到要删除的节点前一个节点for(int i = 0; i < index && cur != null;i++){cur = cur.next;}//保存要删除节点的下一个节点ListNode temp = cur.next.next;cur.next = temp;//链表长度减一size--;}
}/*** Your MyLinkedList object will be instantiated and called as such:* MyLinkedList obj = new MyLinkedList();* int param_1 = obj.get(index);* obj.addAtHead(val);* obj.addAtTail(val);* obj.addAtIndex(index,val);* obj.deleteAtIndex(index);*/

206.反转链表

文章链接:代码随想录 (programmercarl.com)

思路:双指针思路

实现代码遇到的问题:

(1)pre指针一开始应该指向的是null

(2)循环条件写错,应该写成cur != null 就行,不需要添加cur.next != null,以后遇到这种情况一定要举例子看条件是否成立

Java代码:

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode reverseList(ListNode head) {//先判断特殊情况if(head == null){return head;}//指针1ListNode pre = null;//指针2ListNode cur = head;while(cur != null){//首先存储节点ListNode temp = cur.next;cur.next = pre;pre = cur;cur = temp;}return pre;}
}

http://www.yayakq.cn/news/781049/

相关文章:

  • 建设集团网站公司信誉好的唐山网站建设
  • 站点搭建深圳找个人做网站
  • 用c 做网站可以吗厦门市建设局官方网站证书查询
  • 怎么建网站新手入门推广标题怎么写
  • 服装设计网站怎么做网站的设计与应用论文
  • 产品推广宣传语济南网站优化收费
  • 岳阳网站建设的公司网站地图
  • 做淘宝网站要安全保障么wordpress程序图片打开慢
  • 汽车类网站搭建网站上传页面
  • 广东省网站免备案表网站对于企业的好处
  • 一级a做爰片免费网站下载wordpress博客亚马逊广告
  • 手机餐饮网站开发乐清柳市阿里巴巴做网站的
  • 台州网站制作定制网站识别手机电脑自动跳转
  • 佛山网站seo优化排名公司被逆冬seo课程欺骗了
  • 小区媒体网站建设台州网站制作服务
  • 网站注册备案之后怎么做网站智能经济高峰论坛
  • 网站域名怎么看做设计有必要买素材网站会员
  • 网站运营怎么学做网站3年3万
  • 网站建设发布深圳债务优化
  • 大理州建设局官方网站三秦seo
  • 萍乡网站设计公司软件工程开发师
  • 做接口的网站angular网站模板下载
  • 如何推广运营网站网站开发人员招聘it管理
  • 设计logo网站 生成器无极网站维护
  • 代刷网站建设网站建设 排名
  • 企业网站推广哪个公司好科技团队网站
  • 计算机网站建设论文怎么做网站底部文件
  • 酒店 深圳 网站制作广州景点排行榜前十名
  • 图书馆网站结构怎么做如何自己做淘宝客网站
  • 淘宝联盟怎样建设网站三合一网站cms