算法
波神小波
这个作者很懒,什么都没留下…
展开
-
链表(一)-easy
环形链表 @快慢指针(相遇则为环形链表) 链表题解法中,有一种解法是非常重要的,就是快慢指针(双指针) 基本原理:定义两个指针,一个快,一个慢,慢指针指向头结点,快指针指向头结点的下一个节点,快指针每次走两步,慢指针每次走一步,如果链表为环形,则两指针迟早会相遇,如果快指针为空了,则说明不存在环形链表 public boolean hasCycle(ListNode head) { if(head == null || head.next == null) return fal原创 2020-06-28 16:06:09 · 121 阅读 · 0 评论 -
字符串(一)-easy
新建一个栈,遍历字符串,遇到开头符则把对应的末尾符进栈,遇到尾弧则弹出栈顶比对,有不相同则返回false public boolean isValid(String s) { Stack<Character> stack = new Stack<Character>(); for(char c: s.toCharArray()){ if(c=='(')stack.push(')'); else if..原创 2020-06-28 16:01:30 · 169 阅读 · 0 评论