2018-09-10-weekly

Algorithm

删除链表的倒数第N个节点

  • What:给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。

  • How:这是一道典型的利用双指针法解题。首先让指针first指向头节点,然后让其向后移动n步,接着让指针sec指向头结点,并和first一起向后移动。当first的next指针为NULL时,sec即指向了要删除节点的前一个节点,接着让first指向的next指针指向要删除节点的下一个节点即可。

  • Key Codes

  class Solution {
   public ListNode removeNthFromEnd(ListNode head, int n) {
       ListNode p = new ListNode(-1);
       p.next = head;
       ListNode first = p;
       ListNode sec = p;
       while (first != null && n > -1) {
           first = first.next;
           n--;
       }
       while (first != null) {
           first = first.next;
           sec = sec.next;
       }
       sec.next = sec.next.next;
       return p.next;  
   }
}

Review

Tip

  • What PLSQL使用技巧
    
   快捷输入SQL语句,例如输入s,按下空格,自动替换成SELECT;再例如,输入sf,按下空格,自动替换成SELECT * FROM,非常方便,节省了大量的时间去编写重复的SQL语句。
   
   设置方法:菜单Tools --> Preferences --> Editor --> AutoReplace.(勾选) --> Edit

   编写相应的txt文件,将其放到plsql 的安装目录下即可,语法规则(例):s=SELECT。

Share

深度解析什么是二维码以及如何用Python 生成个性二维码

原文地址:https://www.cnblogs.com/lanqingyu/p/9828565.html