建立單鏈表並賦值,要求遍歷能輸出1~9
用表頭建立單鏈表,用頭插法建立連結串列,遍歷的結果是9 8 7 6 5 4 3 2 1
具體的源程式如下:
#include <stdio.h> #include <stdlib.h> #define OK 0 #define ERROR -1 #define MALLOC_ERROR -2 typedef int ElementType; typedef struct node { ElementType data; struct node *next; }Node; typedef Node *PNode;
int Create_List_Head(PNode h, ElementType data) { if (h == NULL) { return ERROR; } PNode node = (PNode)malloc(sizeof(Node)/sizeof(char)); if (node == NULL) { return MALLOC_ERROR; } node->data = data; node->next = h->next; h->next = node; return OK; } void DisPlay(PNode h) { if (h == NULL) { return; } PNode temp = h->next; // 連結串列第一個結點指標 while (temp) { printf ("%4d", temp->data); temp = temp->next; } printf ("\n"); } int main() { PNode head_node = (PNode)malloc(sizeof(Node)/sizeof(char)); if (head_node == NULL) { return ERROR; } head_node->next = NULL; int i = 1; for (i = 1; i < 10; i++) { if (Create_List_Head(head_node, i) != OK) { return ERROR; } } DisPlay(head_node); return 0; }
相關推薦
建立單鏈表並賦值,要求遍歷能輸出1~9
用表頭建立單鏈表,用頭插法建立連結串列,遍歷的結果是9 8 7 6 5 4 3 2 1 具體的源程式如下:#include <stdio.h> #include &
R語言-迴圈產生變數名並賦值,應用到 ggolot2 迴圈作圖
問題的起源來自,想要批量出數十張組合好的圖。 實現過程中,最大的問題是如何實現:迴圈產生變數名,並對其將ggplot的一長段作圖程式碼傳送給該變數名。 最終使用assign函式解決了 首先產生1000個字串格式的備用變數名: p <- c(paste0('p
建立單鏈表並原地將連結串列逆序
#include<iostream> #include<stdio.h> using namespace std; #define MAXSIZE 5 #define ERROR -1; #define CORRECT 1; typedef struct List{
java實現---查詢單鏈表的中間節點,要求只能遍歷一次連結串列
定義兩個節點,一個快,一個慢 快的一次走兩步;慢的一次走一步 當快的走到連結串列的最後時,慢的剛好走到一半,即連結串列的中間節點 class ListNode{ int data; ListNode next; } public class
建立單鏈表並找到中間數
題目:建立單鏈表並找到中間數 普通方法就是先遍歷一遍連結串列知道了單鏈表的長度N,然後再從頭找到N/2時候的數。這種方法時間複雜度為O(N+N/2)=O(3N/2)。 在優化一下這個方法,可以利用快慢指標,也就是設定兩個指標,然後快的一次移動兩個,慢的一次移動一個位置。總體程式碼(C語言):
Java建立單鏈表並直接選擇排序輸出
RT 寫Java也一年左右了,第一次用Java寫單鏈表。。。 廢話少說,程式碼如下: import java.util.Scanner; public class Exp1 { public s
jquery 子窗體獲取父窗體控制元件並賦值,後臺呼叫前臺指令碼或者在後臺直接寫指令碼
子窗體前臺指令碼方法,獲取父窗體的控制元件並賦值,使用iframe了: <script type="text/javascript"> function SetCou
查詢單鏈表的中間結點,要求只能遍歷一次連結串列
pNode FindMiddleNode(pList plist) { /* 快慢指標,快的兩步,慢的一步 */ pNode pFast = plist; pNode pSlow = plist; while (pFast&&pFast->n
單鏈表與List究竟哪個遍歷速度快?
firelong雄文又起,不過說實話,可能是這篇文章寫的太簡單了,其中的理由和結論都聽得不是很明白。當然有一段話的意思很清楚(原話):“C#事件的背後是一個委託連結串列(單鏈表),單鏈表的遍歷呼叫效能遠低於陣列連結串列(List<T>)”。這句話讓我比較納悶,因為從我的直覺來說,兩種做法之間即使效
【資料結構作業五】以鄰接表作儲存結構,廣度遍歷圖的優先搜尋序列
#include <iostream> #define MVNum 100 #define MAXQSIZE 100 using namespace std; typedef char ElemType; typedef int QElemType; typed
獲取數值型數組的最大值和最小值,使用遍歷獲取每一個值,然後記錄最大值和最小值的方式。(數組遍歷嵌套if判斷語句)
if判斷 增強 ++ pre sta 方法 最小值 test 記錄 package com.Summer_0420.cn; /** * @author Summer * .獲取數值型數組的最大值、最小值 * 方法:遍歷獲取每一個值,記錄最大值; *
資料結構--C語言--逆序建立單鏈表,遍歷單鏈表,在單鏈表第5個元素前插入一個值為999的元素,刪除單鏈表第5個元素
#include<stdio.h> #include<stdlib.h> #define OK 1 #define ERROR 0 #define LEN sizeof(struct LNode) struct LNode{ int data; struct LNode
已知線性表中元素以值遞增有序排列,並以單鏈表作為儲存結構,設計一個演算法,刪除表中值相同的多餘元素
/* 已知線性表中元素以值遞增有序排列,並以單鏈表作為儲存結構 * 設計一個演算法,刪除表中值相同的多餘元素 * 使得操作後表中所用元素值均不同,同時釋放被刪除的結點空間 */ #include<stdio.h> #inclu
建立一個public static final 型別的map 並能賦初值,並且只能在初始化的時間賦值,而不能中途修改它的值
1.寫法一 :可以寫在一個靜態的接口裡面,介面中宣告一些靜態常量,直接呼叫 public static interface ITicketPublisher {// 票卡發行方public static final int CHINA_MOBILE = 0x05
c#+arcgisengine 對屬性表建立欄位項、並賦值(或對已有欄位項值進行更改)
while (pFeature != null) { string[] fldvalue = new string[pFields.FieldCount]; for (int i = 0; i <
順序表建立 ,賦值,刪除,插入--- C語言的實現
順序表的基本概念自行百度解決,這裡主要記錄的是順序表用C實現的原始碼#include <stdio.h>#include <stdlib.h>#define maxsize 10typedef struct{int data[maxsize];int
判斷一個單鏈表是否帶環,並求出環的長度,及環的入口點
單鏈表是否帶環? 用快慢指標分別遍歷這個單鏈表,如果快慢指標能相遇,就代表有環的存在。 環的長度? 當快慢指標相遇時,記錄當前位置,然後走一圈的長度就是環的長度。 環的入口點? 設快指標F走兩個結點,慢指標S走一個結點。 F=2*S; &nb
109-宣告第一個變數,給它賦值,並使用它
計算機程式的執行其實就是對資料的操作,資料通過變數在計算機中儲存。 變數的宣告:宣告就是建立,宣告變數需要指定型別和變數名。 <type> <name>; 例項:(每一個宣告都是一條語句,語句以;結束) int age; int hp; string name
定義一個數組,陣列初始長度由控制檯獲取 。隨後手動給陣列中每個元素賦值,陣列滿後將陣列長度擴充二倍並輸出,清空陣列中所有元素且值繼承陣列長度,並重新進行手動新增元素,無限死迴圈直至輸出-0後結束程式。
package com.tedu; import java.util.Arrays; import java.util.Scanner; /** * 需求: * 定義一個初始陣列,陣列初始長度由控制檯獲取 * 隨後手動給陣列中每個元素賦值,陣列滿後將陣列長度擴充二倍輸
C語言建立迴圈單鏈表並輸出
Description 依次輸入n(n>0)個整數,建立帶表頭結點的迴圈單鏈表,並依次輸出單鏈表中的元素值。 提示: 結點結構如下: typedef struct Node { int data; &