链表属于线性扫描范畴。
但是线性扫描也是有变种的,如双线性扫描,多游标扫描,双向扫描。
比如找倒数第k(k>=0)个元素,可以设置fast=slow+k,当fast到达end时slow就是所求。
找中位数,设置线性fast+=2,slow+=1,当fast无法加下去时slow就是所求。
反转链表,线性p,q,其中q是p的旧下一个节点。
合并链表。最简单的双线性扫描。
链表属于线性扫描范畴。
但是线性扫描也是有变种的,如双线性扫描,多游标扫描,双向扫描。
比如找倒数第k(k>=0)个元素,可以设置fast=slow+k,当fast到达end时slow就是所求。
找中位数,设置线性fast+=2,slow+=1,当fast无法加下去时slow就是所求。
反转链表,线性p,q,其中q是p的旧下一个节点。
合并链表。最简单的双线性扫描。