寒假專案1-動態連結串列體驗(示例)
/*
* Copyright (c) 2014, 煙臺大學計算機學院
* All rights reserved.
* 檔名稱:test.cpp
* 作 者:劉暢
* 完成日期:2015 年 1 月 21 日
* 版 本 號:v1.0
*
* 問題描述:下面是一個建立動態連結串列的程式。閱讀程式,在草稿紙上畫出連結串列建立的過程,藉此學會如何建立連結串列。
* 輸入描述:輸入n(n為結點資料)。
* 程式輸出:輸出動態連結串列
#include <iostream>
using namespace std;
struct Node
{
int data; //結點的資料
struct Node *next; //指向下一個結點
};
Node *head=NULL; //將連結串列頭定義為全域性變數,以便後續操作
void make_list(); //建立連結串列
void out_list(); //輸出連結串列
int main()
{
make_list();
out_list();
return 0;
}
void make_list()
{
int n;
Node *p;
cout<<"輸入若干正數(以0或一個負數結束)建立連結串列:";
cin>>n;
while (n>0) //輸入若干正數建立連結串列,輸入非正數時,建立過程結束
{
p=new Node; //新建結點
p->data=n; //把n放入新結點的資料成員中
p->next=head; //新建的結點指向原先的連結串列頭
head=p; //連結串列頭賦值為新建的節點,這樣,新結點總是連結串列頭
cin>>n; //輸入下一個數
}
return;
}
void out_list()
{
Node *p=head;
cout<<"連結串列中的資料為:"<<endl;
while (p!=NULL)
{
cout<<p->data<<" ";
p=p->next;
}
cout<<endl;
return;
}
執行結果:
學習心得:
用了半個小時才勉強讀懂這些程式碼的意思,也許是一週多的荒廢讓我遺忘了很多知識點吧。
相關文章
- 連結串列經典示例
- 靜態連結動態連結的連結順序問題和makefile示例
- 關於動態連結串列的理解
- 動態連結串列的建立(程式碼)
- 連結串列專題
- 資料結構實驗之連結串列二:逆序建立連結串列資料結構
- 資料結構實驗之連結串列九:雙向連結串列資料結構
- LeetCode連結串列專題LeetCode
- 【Python】python連結串列應用原始碼示例Python原始碼
- 資料結構實驗之連結串列三:連結串列的逆置資料結構
- 資料結構實驗之連結串列五:單連結串列的拆分資料結構
- 資料結構實驗之連結串列六:有序連結串列的建立資料結構
- 資料結構實驗之連結串列一:順序建立連結串列資料結構
- 連結串列專題——面試中常見的連結串列問題面試
- 資料結構實驗之連結串列四:有序連結串列的歸併資料結構
- Spark 雜記1-專案使用經驗Spark
- 連結串列 - 單向連結串列
- 連結串列-迴圈連結串列
- 連結串列-雙向連結串列
- 《軟體專案經驗總結》
- 連結串列4: 迴圈連結串列
- 連結串列-雙向通用連結串列
- 連結串列-單連結串列實現
- 資料結構-malloc申請動態空間-連結串列的建立資料結構
- Go 語言 結構體連結串列Go結構體
- C#資料結構-靜態連結串列C#資料結構
- cmake 連結動態連結庫
- 動態連結庫與靜態連結庫
- 連結串列-雙向非通用連結串列
- 【LeetCode】->連結串列->通向連結串列自由之路LeetCode
- 連結串列入門與插入連結串列
- Leetcode_86_分割連結串列_連結串列LeetCode
- 資料結構-單連結串列、雙連結串列資料結構
- 連結串列
- 資料結構實驗之連結串列七:單連結串列中重複元素的刪除資料結構
- 資料結構實驗:連結串列的應用資料結構
- LeetCode-Python-86. 分隔連結串列(連結串列)LeetCodePython
- 單連結串列建立連結串列出現問題
- 資料結構實驗之連結串列八:Farey序列資料結構