最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言實現(xiàn)輸出鏈表中倒數(shù)第k個節(jié)點

 更新時間:2014年09月17日 08:51:43   投稿:shichen2014  
這篇文章主要介紹了C語言實現(xiàn)輸出鏈表中倒數(shù)第k個節(jié)點,主要涉及鏈表的遍歷操作,是數(shù)據(jù)結(jié)構(gòu)中鏈表的常見操作。需要的朋友可以參考下

本文實例展示了C++實現(xiàn)輸出鏈表中倒數(shù)第k個節(jié)點的方法,分享給大家供大家參考之用。

運行本文所述實例可實現(xiàn)輸入一個單向鏈表,輸出該鏈表中倒數(shù)第k個節(jié)點。

具體實現(xiàn)方法如下:

/* 
* Copyright (c) 2011 alexingcool. All Rights Reserved. 
*/ 
#include <iostream>

using namespace std;

int array[] = {5, 7, 6, 9, 11, 10, 8};
const int size = sizeof array / sizeof *array;

struct Node
{
 Node(int i = 0, Node *n = NULL) : item(i), next(n) {}

 int item;
 Node *next;
};

Node* construct(int (&array)[size])
{
 Node dummy;
 Node *head = &dummy;

 for(int i = 0; i < size; i++) {
 Node *temp = new Node(array[i]);
 head->next = temp;
 head = temp;
 }

 return dummy.next;
}

void print(Node *head)
{
 while(head) {
 cout << head->item << " ";
 head = head->next;
 }
}

Node* findKnode(Node *head, int k)
{
 Node *pKnode = head;

 if(head == NULL) {
 cout << "link is null" << endl;
 return NULL;
 }

 while(k--) {
 if(head == NULL) {
  cout << "k is bigger than the length of the link" << endl;
  return NULL;
 }

 head = head->next;
 }

 while(head) {
 head = head->next;
 pKnode = pKnode->next;
 }

 return pKnode;
}

void main()
{
 Node *head = construct(array);
 cout << "source link: ";
 print(head);
 cout << endl;
 Node *kNode = findKnode(head, 5);
 if(kNode != NULL)
 cout << "the knode is: " << kNode->item << endl;
}

測試用例如下:

1. NULL Link
    head = NULL;
2. normal Link, with normal k
    k <= len(head);
3. normal Link, with invalid k
    k > len(head)

希望本文所述對大家C程序算法設(shè)計的學(xué)習有所幫助。

相關(guān)文章

  • C++中vector迭代器失效問題詳解

    C++中vector迭代器失效問題詳解

    vector是向量類型,它可以容納許多類型的數(shù)據(jù),如若干個整數(shù),所以稱其為容器,這篇文章主要給大家介紹了關(guān)于C++中vector迭代器失效問題的相關(guān)資料,需要的朋友可以參考下
    2021-11-11
  • 使用matlab繪制七夕表白玫瑰花束

    使用matlab繪制七夕表白玫瑰花束

    又是一年七夕節(jié)要到了,每年一次直男審美MATLAB繪圖大賽開始了,于是今年對我之前寫的老代碼進行了點優(yōu)化組合,整了個花球變花束,感興趣的小伙伴可以動手試一試
    2023-08-08
  • C++中remove與erase區(qū)別小結(jié)

    C++中remove與erase區(qū)別小結(jié)

    remove函數(shù)和 erase函數(shù)都可以實現(xiàn)元素的刪除,本文主要介紹了C++中remove與erase區(qū)別小結(jié),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2024-08-08
  • C語言代碼實現(xiàn)簡單三子棋游戲

    C語言代碼實現(xiàn)簡單三子棋游戲

    這篇文章主要為大家詳細介紹了C語言代碼實現(xiàn)簡單三子棋游戲,文中安裝步驟介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • C++前綴樹字典樹的學(xué)習與模擬實現(xiàn)代碼示例

    C++前綴樹字典樹的學(xué)習與模擬實現(xiàn)代碼示例

    這篇文章主要介紹了C++前綴樹字典樹的學(xué)習與模擬實現(xiàn)代碼示例,Trie又被稱為前綴樹、字典樹,所以當然是一棵樹,上面這棵Trie樹包含的字符串集合是{in,inn,int,tea,ten,to},每個節(jié)點的編號是我們?yōu)榱嗣枋龇奖慵由先サ?需要的朋友可以參考下
    2023-07-07
  • 淺談C++內(nèi)存管理基礎(chǔ)知識

    淺談C++內(nèi)存管理基礎(chǔ)知識

    這篇文章主要為大家介紹了C++的內(nèi)存管理,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • 基于Matlab繪制洛倫茲吸引子相圖

    基于Matlab繪制洛倫茲吸引子相圖

    洛倫茲吸引子(Lorenz attractor)是由MIT大學(xué)的氣象學(xué)家Edward Lorenz在1963年給出的。本文將利用Matlab實現(xiàn)洛倫茲吸引子相圖的繪制,感興趣的可以了解一下
    2022-04-04
  • 對比C語言中execv相關(guān)的執(zhí)行文件的三個函數(shù)

    對比C語言中execv相關(guān)的執(zhí)行文件的三個函數(shù)

    這篇文章主要介紹了對比C語言中execv相關(guān)的執(zhí)行文件的三個函數(shù),分別為execv()函數(shù)和execve()函數(shù)以及execvp()函數(shù),需要的朋友可以參考下
    2015-08-08
  • C++中char[]能修改char*卻不行

    C++中char[]能修改char*卻不行

    本文主要介紹了C++中char[]能修改char*卻不行,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • C++中的strcmp函數(shù)

    C++中的strcmp函數(shù)

    strcmp函數(shù)是C++標準庫中用于字符串比較的重要函數(shù),在C++中,字符串比較是一項常見的操作,用于判斷兩個字符串是否相等或者大小關(guān)系,本文介紹C++中的strcmp函數(shù),感興趣的朋友一起看看吧
    2024-03-03

最新評論

仁怀市| 芦山县| 库伦旗| 西宁市| 盐山县| 安图县| 永济市| 忻州市| 南投县| 辽中县| 兴化市| 四子王旗| 盐源县| 泸水县| 微博| 西丰县| 谢通门县| 左贡县| 化州市| 清涧县| 怀化市| 阿拉善右旗| 桃源县| 吐鲁番市| 西畴县| 抚顺市| 大悟县| 临潭县| 敦煌市| 蛟河市| 慈利县| 綦江县| 石阡县| 景东| 辉南县| 富顺县| 江安县| 江津市| 宜宾县| 阿拉尔市| 育儿|