資料結構與演算法

2021-07-24 21:32:37 字數 1959 閱讀 6576

由於c++才看了一點,所以基本都用的c語言實現,哈哈哈,以下程式在vs2010上執行通過,否則我怎麼敢放上來呢!!!

/*有乙個順序表l,其元素為整型資料,設計一演算法,將l中所有小於表頭元素的整數

放在前半部分,大於表頭元素的整數放在後半部分,陣列下標1開始儲存

*/#include

using

namespace

std;

#define maxsize 9//千萬不能加分號

typedef

struct sqstack;

void move(sqstack &l)

while(i//i動直到值給了j所在元素

if(iint main()

,8};//花括號只能用於初始化,不能用於賦值

move(l);

for(int i=1;i<=l.length;++i)

cout

0; }

這個題花了好久啊,沒學到快排呢!!!

/*此程式對應資料結構高分筆記上的題目

/*設計演算法,從給定的順序表中刪除重複的結點

*/#include

using namespace std;

typedef struct lnodelnode;

/*建立鍊錶程式*/

void creatlistr(lnode *&c,int a,int n)//要改變的變數用引用值 ,c是乙個空鍊錶,位址?

r->next=null;

}/*刪除鍊錶重複值*/

void deletecf(lnode *l)

else

}}|/*列印鍊錶的值*/

void print(lnode *l)

}int main()

; creatlistr(c,a,8);

print(c);

deletecf(c);

print(c);

}

把考研書上的演算法拿來程式實現,估計除了我也沒誰了 。。。。

/*設計乙個演算法刪除乙個單鏈表l(有頭結點)中的最小值結點*/

#include

using namespace std;

typedef struct lnodelnode;

typedef structsput;

/*建立鍊錶

*/void creatlistr(lnode *&c,int a,int n)

}/*找到最小值結點

*/int findmin(lnode *l,sput &temp)

p=p->next;

}

return temp.index;//返回最小值索引

}/*刪除最小值結點*/

void deletemin(lnode *&l,int i)

q=p->next;

p->next=p->next->next;

free(q);

}/*列印*/

void print(lnode *l)

}int main()

; int

x; sput temp;

creatlistr(c,a,7);

print(c);

x=findmin(c,temp);

cout

}

/*設計一演算法將已 經有的鍊錶逆序*/

void reversel(lnode *l)

}//最後p的結點為空,迴圈停止,此時最後乙個已經移動過了

這樣的順序比較合理,確定最後乙個結點,就是之前的開始結點,然後利用pq向後移動,知道遇見null,說明移動的夠了,乙個個的向前插入

void reversel(lnode *l)

}

資料結構與演算法 演算法 演算法和資料結構

資料結構與演算法 演算法 好吧,在這裡,您被優秀或優秀的軟體開發人員所隔開。在這種情況下,我會告訴您一開始或至少在我的情況下,並且我知道大多數時候,對於我認識的大多數人,您會覺得自己是乙個無能的人或白痴。基本上,我怎麼可能不理解這一點,然後您會感到沮喪。在這種情況下,我會告訴您情況並不像您想的那麼糟...

資料結構 資料結構與演算法01

1 求一組整數中的最大值。演算法 基本操作是 比較兩個數的大小 模型 仔細想想 你並不知道這個整數到底是多大?整數過大你該怎麼去表示?2 足協的資料庫管理的程式 演算法 需要管理的專案?如何管理?使用者介面?模型 3 資料與資料結構 資料 所有能被輸入到計算機中,並被計算機處理的符號的集合計算機操作...

資料結構 資料結構與演算法02

1 演算法設計的原則 設計演算法時,通常應考慮達到以下目標 1,正確性 2,可讀性 3,健壯性 4,高效率與低儲存量需求 1,正確性 規格說明 四個層次 a,程式中不含語法錯誤 b,程式對於幾組輸入資料能夠得出滿足要求的結果 c,程式對精心選擇的 典型 苛刻切帶有刁難性的幾組輸入資料能夠得出滿足要求...