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

对亚马逊网站做简要分析与评价移动网站开发源代码

对亚马逊网站做简要分析与评价,移动网站开发源代码,深圳网站建设网页设计,vps 网站备案目录 1. 第一题 2. 第二题 3. 第三题 4. 第四题 5. 第五题 6. 第六题 7. 第七题 8. 第八题 9. 第九题 1. 第一题 删除链表中等于给定值 val 的所有节点。OJ链接 思路如下#xff1a; 相当于链表的removeAll();制定prev和cur#xff0c;prev记录前一个节点#xff… 目录 1. 第一题 2. 第二题 3. 第三题 4. 第四题 5. 第五题 6. 第六题 7. 第七题 8. 第八题 9. 第九题 1. 第一题 删除链表中等于给定值 val 的所有节点。OJ链接 思路如下 相当于链表的removeAll();制定prev和curprev记录前一个节点方便删除。 但是要注意headnull和head.valval的时候 public ListNode removeElements(ListNode head, int val) {if (head null) {return head;}ListNode cur head.next;ListNode prev head;while (cur ! null) {if (cur.val val) {prev.next cur.next;cur cur.next;} else {prev cur;cur cur.next;}}if (head.val val) {head head.next;}return head;} 2. 第二题 反转一个单链表。OJ链接 思路如下  头插法把后面的头插到前面 public ListNode reverseList(ListNode head) {if (head null) {return head;}ListNode cur head.next;head.next null;while (cur ! null) {ListNode curN cur.next;cur.next head;head cur;cur curN;}return head;}3. 第三题 给定一个带有头结点 head 的非空单链表返回链表的中间结点。如果有两个中间结点则返回第二个中间结点。OJ链接 思路如下 快慢指针快指针走2步慢指针走1步当快指针走完慢指针刚刚好走一半  public ListNode middleNode(ListNode head) {ListNode fast head;ListNode slow head;while (fast ! null fast.next ! null) {fast fast.next.next;slow slow.next;}return slow;} 4. 第四题 将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。OJ链接 思路如下 定义一个傀儡头节点和tmp让headA和headB去比较如果谁小tmp就跟在谁的后面然后head小的直到一个链表为空  public ListNode mergeTwoLists(ListNode headA, ListNode headB) {ListNode newH new ListNode(0);ListNode tmp newH;while (headA ! null headB ! null) {if (headA.val headB.val) {tmp.next headA;headA headA.next;} else {tmp.next headB;headB headB.next;}tmp tmp.next;}if (headA null) {tmp.next headB;}if (headB null) {tmp.next headA;}return newH.next;} 5. 第五题 写代码以给定值x为基准将链表分割成两部分所有小于x的结点排在大于或等于x的结点之前 。OJ链接 思路如下 两个链表一个小链表头节点as尾节点ae一个大链表头节点bs尾节点be小于x放小链表大于x放大链表。然后让ae指向bs把两个连接起来 public ListNode partition(ListNode pHead, int x) {// write code hereListNode as null;ListNode ae null;ListNode bs null;ListNode be null;ListNode cur pHead;while (cur ! null) {if (cur.val x) {if (as null) {as ae cur;} else {ae.next cur;ae ae.next;}} else {if (bs null) {bs be cur;} else {be.next cur;be be.next;}}cur cur.next;}if (as null) {return bs;}ae.next bs;if (bs ! null) {be.next null;}return as;} 6. 第六题 链表的回文结构。OJ链接 思路如下  用快慢指针找出中间节点然后把后面的节点进行头插最后头和尾开始比较val值相不相同 public boolean chkPalindrome(ListNode A) {// write code hereif (A null) {return true;}ListNode slow A;ListNode fast A;while (fast ! null fast.next ! null) {fast fast.next.next;slow slow.next;}ListNode cur slow.next;while (cur ! null) {ListNode curN cur.next;cur.next slow;slow cur;cur curN;}while (A ! slow) {if (A.val ! slow.val) {return false;}if (A.next slow) {return true;}A A.next;slow slow.next;}return true;}7. 第七题 输入两个链表找出它们的第一个公共结点。OJ链接 思路如下 两条链表定义p1和p2求出每条链表的长度然后相减得出多出来的距离把多出来的距离让长的链表先走。然后两个节点一起走相遇的点就是公共的第一个节点 public ListNode getIntersectionNode(ListNode headA, ListNode headB) {ListNode p1 headA;ListNode p2 headB;int lenA 0;int lenB 0;while (p1 ! null) {lenA;p1 p1.next;}while (p2 ! null) {lenB;p2 p2.next;}int len lenA - lenB;p1 headA;p2 headB;if (len 0) {p1 headB;p2 headA;len lenB - lenA;}while (len ! 0) {p1 p1.next;len--;}while (p1 ! p2) {p1 p1.next;p2 p2.next;}if (p1 null) {return null;}return p1;} 8. 第八题 给定一个链表判断链表中是否有环。OJ链接 思路如下 快慢指针快的走两步慢的走一步。也就是快的先进圈如果他俩相遇了就说明有环假设没环的话快的先进去早就空指针null了 public boolean hasCycle(ListNode head) {ListNode fast head;ListNode slow head;while (fast ! null fast.next ! null) {fast fast.next.next;slow slow.next;if (fast slow) {return true;}}return false;} 相遇的原理 因为fast走得快slow走得慢。所以fast先进环slow后进环我们可以看成fast进了环之后再追slow。我们假设他们距离为Nfast快一步所以每次都缩短1步到0之后就相遇了。如下图 如果fast一次走三步还能相遇吗那么他们每走一步追2如下图 9. 第九题 给定一个链表返回链表开始入环的第一个节点。 如果链表无环则返回 NULL OJ链接 思路如下 如果快慢指针快指针走2步慢指针走1步她两相遇了说明有环这时候我们让快指针重新出发fasthead他和慢指针现在以相同的速度前行当他们再次相遇的时候就是出口 public ListNode detectCycle(ListNode head) {ListNode fast head;ListNode slow head;while (fast ! null fast.next ! null) {fast fast.next.next;slow slow.next;if (fast slow) {break;}}if (fast null || fast.next null) {return null;}fast head;while (fast ! slow) {fast fast.next;slow slow.next;}return fast;} }
http://www.pierceye.com/news/530542/

相关文章:

  • 自己搭建的ftp怎么做网站装修公司展厅效果图
  • 做网站手机验证收费吗百度竞价推广是什么工作
  • 电商网站 案例熊掌号怎么域名做网站
  • 做网站怎么改关键词安卓开发软件工具
  • 做SEO公司多给网站wordpress 固定链接 无法访问
  • 潍坊百度网站优化网站建设相关文章
  • 做学术研究的网站怎样建设个人游戏网站
  • dede淘宝客网站网站页面优化简单吗
  • 长春做网站优化的公司赣州做网站公司哪家好
  • 网站开发宝典做网站属于软件开发吗
  • 网站建设要求 优帮云福州模板建站定制网站
  • wordpress本地更换为网站域名jsp网站开发书籍
  • 做一个网站的流程沧州网站建设
  • 山东省城乡住房建设厅网站住房建设部网站监理员
  • 怎么做百度网站验证保健品商城网站模板
  • 丹东市做网站广东做网站的公司
  • 网站收录大全销售推广
  • 网站发展历程东莞企业网站建设制作
  • 厦门市建设局查询保障摇号网站首页做房产网站长
  • 公司网站建设的普遍性长沙建站网
  • 东莞英文建站公司api模式网站开发
  • 参与网站网站建设可判几年大同住房和城乡建设网站
  • 住房和城乡建设部网站投诉电话哈尔滨网页设计网站模板
  • 西安网站制作哪家公司好阳江房产网最新楼盘江楼盘
  • 科技馆网站建设网络营销实务教案
  • 网站上线倒计时html5模板文创产品设计流程
  • 建设项目竣工环保验收公示网站网站建设具体实施方案
  • 蜜淘app在那个网站做的濮阳吧
  • 建网站市场哪家网站开发好
  • 找生产厂家的网站宁波seo运营推广平台排名