Leetcode之打印链接的倒数第K个节点
生活随笔
收集整理的這篇文章主要介紹了
Leetcode之打印链接的倒数第K个节点
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1 問題
打印鏈表倒數(shù)第K個節(jié)點值。
2 代碼實現(xiàn)
#include<stdio.h>//定義一個Node結構體,里面包含了value值和保存了下一個Node的指針(地址) typedef struct Node {int value;Node *next; } Node;//打印鏈表所有的值,循環(huán)遍歷一次,因為鏈表節(jié)點的最后一個節(jié)點肯定是空,所以循環(huán)條件是node==NULL就終止循環(huán) void printList1(Node *head) {if (head == NULL) {printf("head is NULL\n");return;}while (head != NULL) {printf("value is %d\n", head->value);head = head->next;} }/** 打印鏈表的倒數(shù)第K個值,比如我們鏈接是0->1->2->3->4->5->6->NULL,K是2,我們知道這個倒數(shù)第二個值是5,我們怎么獲取呢?定義2個節(jié)點指針,分別是叫快慢指針,我們先讓快指針走K步 也就是把快節(jié)點指針移動到值為2的地方, 0->1->2->3->4->5->6->NULL low fast 然后我們一起把low和fast向后移動,直到fast節(jié)點指向NULL為止,那么low節(jié)點的值就是我們需要找到的倒數(shù)第K個值 0->1->2->3->4->5->總結
以上是生活随笔為你收集整理的Leetcode之打印链接的倒数第K个节点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android之靠谱的Activity从
- 下一篇: Android之提示订阅配置订阅需要传新