求乙個簡單資料結構的程式

2025-03-27 08:15:37 字數 3785 閱讀 4619

1樓:匿名使用者

請輸入int型別的資料(也就是整數),資料之間用空格或者回車分隔,最後乙個數字一定要輸入。

1,之後回車才可以結束輸入。

呵呵,當然是除錯通過了我才會發團殲埋出來呀!不知你用的是什麼ide環境?我是在bcb2007中測試通過了才發出來的,剛才已經對原程式做了針對vc++的適應性修改,請重試,如果還不行,就請把你所用的ide名稱和錯誤資訊寫改尺出來吧!

輸入-1表示結束輸入:c程式:

#include

#include

typedef struct node{

int data;

struct node *next;

node;node *create(void)

node *a=null;

int i;

scanf("%d",&i);

if (i!=-1) {

a=(node *)malloc(sizeof(node));

a->data =i;

a->next =create();

return a;

int main(void)

node *list;

list=create();

while (list!=null)

printf("%d ",list->data );

list=list->next ;

return 0;

塌螞---c++程式:

#include

typedef struct node{

int data;

struct node *next;

node;node *create(void)

node *a=null;

int i;

std::cin>>i;

if (i!=-1) {

a=new struct node;

a->data =i;

a->next =create();

return a;

int main(void)

node *list;

list=create();

while (list!=null)

std::coutlist=list->next ;

std::cout

2樓:網友

struct boy

int code;

boy *next;

class ring

public:

ring(int n)

void build();

void count(int x);

void show();

void clear();

int output();

protected:

boy *pcurrent;

boy *ppre;

boy *begin;

void ring::build()

begin=new boy[n];

for(int i=1;icode=i;

ppre=pcurrent;

pcurrent=pcurrent->next;

pcurrent=begin;

void ring::count(int x)if(x<1)

cout<<"和毀不能迴圈租餘!"弊棚滾int ring::output()

coutvoid ring::clear

ppre->next=pcurrent->next;

pcurrent=ppre;

簡單描述資料結構的建立

3樓:剛榮

建立圖表。

在excel 2003中有兩類圖表,如果建立的圖表和資料是放置在一起的,這樣圖和表結合就比較緊密、清晰、明確,更便於對資料的分析和**,稱為內嵌圖表。如果要建立的工作表不和資料放在一起,而是單獨佔用乙個工作表,稱為圖表工作表,也叫獨立工作表。

在excel 2003中可以使用多種方法建立圖表,下面介紹其中的幾種。

1.用「圖表」工具欄建立圖表。

用「圖表」工具欄建立圖表的操作步驟如下。

1)單擊「檢視」→「工具欄」→「圖表」選單命令,調出「圖表」工具欄。

2)選擇用於建立圖表的資料。圖7-4-2 單擊「圖表」工具欄中的「圖表型別」按鈕。

3)單擊「圖表」工具欄中的「圖表型別」按鈕的向下箭頭。

4)選擇所需要的圖表型別,就建立乙個嵌入式圖表。

資料結構,這題怎麼做

4樓:網友

當(y+1)*(y+1)>n時迴圈終止。

y+1)*(y+1) 當y=n^(1/2)-1(^表示乘方) 時 y+1=n^(1/2) (y+1)*(y+1)=n 當y=n^(1/2)時迴圈終止,迴圈共執行n^(1/2)次,因此選c

5樓:丶菜雞幾雞幾

這個**的時間複雜度是o(根號n)的也就是n^(1/2),因為這個while迴圈一共會執行根號n次,當y>根號n時,條件就不會滿足了,根號n*根號n=n這很顯然是吧。

資料結構作業

6樓:網友

按題意,其實是要將a,b連結串列接起來並進行排序作為c連結串列,所以不許申請新的空間。下面方案連乙個指標的空間都不會再申請。

只講方案:1、將a連結串列接在b連結串列尾部形成新的b連結串列;

2、a連結串列的頭指標的next置空待後面使用;

3、(雙層迴圈)迴圈遍歷b連結串列,每遍歷到乙個元素,則開始內迴圈遍歷a連結串列(第一次為空),當內迴圈中遍歷a連結串列到空或者大於當前b連結串列元素值時停止內迴圈,將b連結串列當前元素插入。

內迴圈停止時a連結串列所處的位置的前乙個位置;

4、b連結串列遍歷結束時得到新的a連結串列即可作為最終需要的c連結串列。

上面方案用的是插入排序的時間複雜度

關於資料結構

7樓:伯盈秀

( ×1. 連結串列的每個結點中都恰好包含乙個指標。

答:錯誤。連結串列中的結點可含多個指標域,分別存放多個指標。例如,雙向連結串列中的結點可以含有兩個指標域,分別存放指向其直接前趨和直接後繼結點的指標。

2. 連結串列的物理儲存結構具有同連結串列一樣的順序。

錯,連結串列的儲存結構特點是無序,而連結串列的示意圖有序。

3. 連結串列的刪除演算法很簡單,因為當刪除鏈中某個結點後,計算機會自動地將後續的各個單元向前移動。

錯,連結串列的結點不會移動,只是指標內容改變。

4. 順序表結構適宜於進行順序存取,而連結串列適宜於進行隨機存取。

錯,正好說反了。順序表才適合隨機存取,連結串列恰恰適於「順藤摸瓜」

5. 順序儲存方式的優點是儲存密度大,且插入、刪除運算效率高。

錯,前一半正確,但後一半說法錯誤,那是鏈式儲存的優點。順序儲存方式插入、刪除運算效率較低,在表長為n的順序表中,插入和刪除乙個資料元素,平均需移動表長一半個數的資料元素。

6. 線性表在物理儲存空間中也一定是連續的。

錯,線性表有兩種儲存方式,順序儲存和鏈式儲存。後者不要求連續存放。

7. 棧和佇列的儲存方式既可是順序方式,也可是鏈結方式。

8. 兩個棧共享一片連續記憶體空間時,為提高記憶體利用率,減少溢位機會,應把兩個棧的棧底分別設在這片記憶體空間的兩端。

9. 隊是一種插入與刪除操作分別在表的兩端進行的線性表,是一種先進後出型結構。 錯,後半句不對。

10. 乙個棧的輸入序列是12345,則棧的輸出序列不可能是12345。 錯,有可能。

求資料結構程式C語言版,計算任意兩個一元多項式的加減乘法,輸

struct poly 在寫加減乘除時 首先輸入一個多項式其實就是一個結構體陣列 每個陣列元素由 次數和係陣列成 排序 按照次數的大小順序排序 求出每個多項式的長度,再 每個加減乘除函式裡面的堆上分配一個新的結構體陣列 malloc 以兩者中最長的長度分配,加減乘除時先遍歷長度大的再遍歷長度小的 兩...

C語言簡單排序的問題,求資料結構c語言大神

這程式有一個錯誤和一個警告。錯誤 函式selectsort的定義函式體中,內迴圈for j i 1 j l length i 出錯,應將i改為j 警告 陣列下標最好從0開始 1.養成習慣2.函式selectsort的排列可以在函式內再定義個datetype t 作為交換,而不是用個全域性變數.因為你...

資料結構樹和二叉樹的一些問題,資料結構二叉樹問題

我以前學的就是這個 但是有點忘記 我把我理解的答案寫給你吧第1個應該是b 第2個n 1個吧 第3個忘記了 上面有人說d 你可以參考下 第4個好象是二叉樹的定義吧 書上應該有的 第5或第6 應該都是c 因為每個二叉樹都有一個空的鏈域第 第7個 是c 第8個 b 應該不對 因為哈夫曼樹的公式是2分之 n...