《資料結構與演算法分析 C語言描述》習題3 6

2021-10-08 22:20:22 字數 2065 閱讀 1819

3.6

#include

#include

#include

/* 進行書p45上兩個多項式的加法(懶得用scanf輸入) */

/* 要求多項式必須有次數為0的項(沒有則設為0) */

typedef

struct node polynode,

*ptrpolynode;

typedef ptrpolynode polynomial;

polynomial createpolynomial_1

(void);

//建立多項式1

polynomial createpolynomial_2

(void);

//建立多項式2

ptrpolynode newnode

(ptrpolynode ptail,

int coeff,

int exponent)

;polynomial addpolynomial

(polynomial poly1, polynomial poly2)

;//將兩個多項式相加

void

showpolynomial

(polynomial poly)

;//次數從高到低輸出多項式的係數

intmain

(void

)polynomial createpolynomial_1

(void

)else

p->pnext =

null

; ptrpolynode ptail = p;

ptail =

newnode

(ptail,10,

1000);

ptail =

newnode

(ptail,5,

14); ptail =

newnode

(ptail,1,

0);return p;

}polynomial createpolynomial_2

(void

)else

p->pnext =

null

; ptrpolynode ptail = p;

ptail =

newnode

(ptail,3,

1990);

ptail =

newnode

(ptail,-2

,1492);

ptail =

newnode

(ptail,11,

1); ptail =

newnode

(ptail,5,

0);return p;

}ptrpolynode newnode

(ptrpolynode ptail,

int coeff,

int exponent)

else

return ptail;

}polynomial addpolynomial

(polynomial poly1, polynomial poly2)

else

p->pnext =

null

; ptrpolynode ptail = p;

ptrpolynode p = poly1->pnext;

ptrpolynode q = poly2->pnext;

while

(p !=

null

&& q!=

null)if

(p->exponent < q->exponent)

if(p->exponent == q->exponent)

}return p;

}void

showpolynomial

(polynomial poly)

while

(p !=

null

)printf

("\n");

}

資料結構與演算法分析 C語言描述

第一種方法,先進行排序,再返回位置k上的元素。簡單排序問題 第二種方法,先將前k個元素讀入,再將剩下的元素逐個讀入,如果新元素大於陣列中第k個元素就找到他合適的位置並將陣列中的乙個元素擠出。第三種方法,利用快排的特點 假設預設公升序排序 每一次快排操作都能確定乙個數在排序結果中的最終固定位置,即該位...

資料結構與演算法分析 c 語言描述

編寫帶有下列宣告的兩個例程 void permute string str void permute char str,int low,int high 第乙個例程是個驅動程式,它呼叫第二個例程並顯示string str中字元的所有排列。例如,str是 abc 那麼輸出的串則是abc,acb,bac...

《資料結構與演算法分析(C 語言描述)》

第1章 uml教程 更多軟體恐怖故事 nist新聞稿 軟體錯誤每年給美國經濟造成595億美元的損失 nist報告本身 pdf 第2章 ieee對實數的反感 c 的按位運算子 第3章 工會 記憶體結構 第5章模式匹配 資料加密 第9章用位集實現集 有關valarrays的更多資訊 第10章 用於解析表...