美文网首页
链表算法

链表算法

作者: JerrySi | 来源:发表于2019-08-19 14:02 被阅读0次

定位链表中间节点

Node *getMiddleNode(Node * head){
    
    if(head == NULL){
        return NULL;
    }

    Node *p1 = head;
    Node *p2 = head;

    while(p2 != NULL && p2->next != NULL){
        p1 = p1->next;
        p2 = p2->next->next;
    }
    return p1;
}

链表反转

Node *reverseNode(Node * head){
    
    if(head == NULL || head->next == NULL){
        return NULL;
    }

    Node *next = NULL;
    Node *pre = NULL;

    while(head != NULL){
        next = head->next;
        head->next = pre;
        pre = head;
        head = next;
    }
    return pre;
}

链表是否有环, 返回的是环的位置,0代表没有环

int checkLoopNode(Node * head){
    
    if(head == NULL || head->next == NULL){
        return 0;
    }

    Node *p1 = head;
    Node *p2 = head;
    int loc = 0;

    while(1){
        if(p1->next == NULL){
            return 0;
        }
    
        if(p1->next->next != NULL) {
            p1 = p1->next->next;
            p2 = p2->next;
            loc++;
        } else {
            p1 = p1->next;
        }
        
        if(p1 == p2){
        
            // 去除环
            // p2->next = NULL;
            return loc;
        }
    }
    return 0;
}

相关文章

  • 数据结构 - 单向链表及相关算法

    单向链表 链表常见算法 链表反转

  • 19 删除链表的倒数第 N 个结点

    题目: 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 自行解答: 算法思路: 其实算法是链表...

  • 头条-手撕代码

    [toc] 图算法 以及最短路径算法 树算法 手写LRU 排序算法 链表算法

  • 单链表

    单链表一些相关的算法集锦,单链表的算法可以提高逻辑能力。 反转链表 最基本的链表的题目,很简单的迭代操作,需要注意...

  • 大厂面试系列(七):数据结构与算法等

    数据结构和算法 链表 链表,常见的面试题有写一个链表中删除一个节点的算法、单链表倒转、两个链表找相交的部分,这个一...

  • Java实现每日一道算法面试题(20):leecode23 合并

    1.算法题目 合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。 示例: 2.算法思路 算法思...

  • 总结

    Android篇 数据结构与算法顺序表 - ArrayList源码链表 - 单向链表、双向链表 - LinkedL...

  • 2018-06-07

    算法笔记 1 大O算法 1:O(运算次数):表示运算最糟糕情况下 运算时间,表示算法时间的增速 2数组链表 在链表...

  • 链表类算法题汇总

    算法题目中常考察的链表操作无非以下几种: 链表反转 链表合并 寻找链表中点 寻找链表倒数第 K 个节点 删除链表节...

  • 如何设计一个内存缓存库

    双向链表 + LRU淘汰算法 + 线程安全 双向链表的设计 用OC来设计双向链表(不是循环链表) 单个节点 整个链...

网友评论

      本文标题:链表算法

      本文链接:https://www.haomeiwen.com/subject/odmssctx.html