程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> 圖片-大量懸賞 數據結構的問題 自己是新手 實在搞不懂 求大神幫忙

圖片-大量懸賞 數據結構的問題 自己是新手 實在搞不懂 求大神幫忙

編輯:編程解疑
大量懸賞 數據結構的問題 自己是新手 實在搞不懂 求大神幫忙

圖片說明

圖片說明

圖片說明

最佳回答:


是要題目的翻譯麼?

實現一個鏈表及以下操作

  • 插入,給定Key值,找到擁有該Key值的節點,並把新節點插入此節點後。若沒有在鏈表中找到該Key值,打印出錯誤信息。
  • 刪除,給定Key值,找到擁有該Key值的節點並刪除。若沒有在鏈表中找到該Key值,打印出錯誤信息。
  • 查詢前序節點,給定Key值,找到擁有該Key值的節點的前序節點。若沒有在鏈表中找到該Key值,打印錯誤信息。
  • 顯式整個鏈表,若鏈表為空,則顯示鏈表為空。

從文件中讀取操作並構建鏈表。文件中每一行代表了一組操作。你可以認為文件中不包含重復的key值,並且key值總是正數。

  • i x y,表示在key值為x的節點後,插入一個key值為y的節點
  • i x -1,表示在表頭插入一個key值為x的節點
  • d x,表示在鏈表裡刪除key值為x的節點
  • f x,找到key值為x的前序節點,並打印出前序節點。
  • p,從頭打印出鏈表中所有的節點

lab2_input.txt是輸入文件

  • i 3 -1: 在表頭插入key為3的節點。此後鏈表只有一個節點[Head -> 3]
  • i 4 3:在key為3的節點後,插入key為4節點。此後鏈表有2個節點[Head -> 3 -> 4]
  • i 7 -1:在表頭插入key為7的節點。此後鏈表有3個節點[Head -> 7 -> 3 -> 4]
  • i 5 8:在key為8的節點後,插入key為5的節點。由於鏈表中沒有key為8的節點,此時打印“Insertion(5) Failed: element 8 is not iin the list”
  • d 3:刪除key為3的節點。此後鏈表有2個節點[Head -> 7 -> 4]
  • i 2 7:在key為7的節點後,插入key為2的節點。此後鏈表[Head -> 7 -> 2 -> 4]
  • d 9:刪除key為9的節點。由於鏈表中沒有key為9的節點,此時打印"Deletion failed: element 9 is not in the list"
  • f 3:找到key=3的前序節點,由於鏈表中沒有key為3的節點,此時打印"Could not find 3 in the list"
  • f 7:找到key=7的前序節點,7的前序節點是當前鏈表的表頭,此時打印"Key of previous node of 7 is header"
  • f 2:找到key=2的前序節點,2的前序節點是key為7的節點,此時打印"Key of previous node of 2 is 7"
  • p:打印鏈表,[Head -> 7 -> 2 -> 4],此時打印"Key:7 Key:2 Key:4"

後面就是寫個p2.c的文件,在裡面實現這些功能。
數據結構和函數的定義,如下
typedef struct Node *PtrToNode;
typedef PtrToNode List;
...
List MakeEmpty(List L);

題目大概意思就是這個...代碼自己寫呗~~

baybaye
baybaye
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved