programming templets 基本演算法

2021-10-02 23:37:19 字數 2352 閱讀 5648

void

quicksort

(int

*arr,

int left,

int right)}if

(iquicksort

(arr,i,right);if

(leftquicksort

(arr,left,j)

;}

void

mergesort

(int left,

int right,

int* a,

int* temp)

for(i=left;i) a[i]

=temp[i]

;//從臨時空間複製回a陣列

}

note: 高精度計算中進製的處理應該是先做運算,然後再判斷進製。

#include

#include

char a[

1000

],b[

1000];

int ans[

1000];

intmain()

// 特判和為0的情形

else

else

if(lena>lenb)

else len=lena;

// 兩數右端對齊,位數少的前端補0

for(i=len-

1;i>

0;i--

) ans[0]

=a[i]

-'0'

+b[i]

-'0'

+left;

// 特判首位情形,輸出無需模10

for(i=

0;i)// 刪除前端多餘0

for(i=j;i)printf

("%d"

,ans[i]);

}return0;

}

note: 第二個可能比第乙個大,是負數要輸出負號。

#include

#include

char a[

12000

],b[

12000

],s1[

12000

],s2[

12000];

int ans[

12000];

intcompare

(char

*a,char

*b)return0;

}}// compare函式判斷a、b大小:若a>b,返回1;aint

main()

elseif(

compare

(a,b)==1

)else

// s1存a、b中的大數,s2存a、b中的小數

lens1=

strlen

(s1)

; lens2=

strlen

(s2)

;for

(i=lens2;i>=

0;i--

) s2[i+lens1-lens2]

=s2[i]

;for

(i=0

;i) s2[i]

='0'

;// s1與s2右端對齊,s2前端空缺位補0

for(i=lens1-

1;i>=

0;i--

)else

}for

(i=0

;i)// 消去前端多餘0 if(

compare

(a,b)==-

1)printf

("-");

for(i=j;i)printf

("%d"

,ans[i]);

return0;

}

#include

#include

char a1[

1000

],b1[

1000];

intmain()

ans[i+lenb]

=overflow;

// 最高位不用模10進製

} lenans=lena+lenb;

while

(ans[lenans]==0

&&lenans>

1) lenans--

;// 刪除前端多餘0

for(i=lenans;i>=

1;i--

)printf

("%d"

,ans[i]);

// 逆序輸出

return0;

}

KNN,TC text category 基本演算法

knn分類演算法 knn分類演算法是一種傳統的基於統計的模式識別方法。演算法思想很簡單 對於一篇待分類文件,系統在訓練集中找到k個最相近的鄰居,使用這k個鄰居的類別為該文件的候選類別。該文件與k個鄰居之間的相似度按類別分別求和,減去乙個預先得到的截尾閾值,就得到該文件的類別測度。用knn也表示所選k...

ASC超算競賽及基本思路

目錄 設計超算集群 看參考文獻做設計 對超算集群進行效能測試 一般來講的測試工具就是用hpl,找到最適合的引數,達到最優秀的計算能力 數字影象處理 通常 量較大,優化較為困難,優化偏重於編譯引數,執行引數和數學庫blas的重新鏈結,對於熱點可以考慮並行 讀寫 演算法 氣候 這個需要做的就是優化 目的...

日常練習 算

問題背景 zhx幫他妹子做數學題。問題描述 求 如 n 3,m 3,這個值為1 1 1 2 1 3 2 1 2 2 2 3 3 1 3 2 3 3 56。輸入格式 僅一行,包含兩個數 n和 m.輸出格式 僅一行,包含所求的答案 mod10 9 7的值。樣例輸入 3 3 樣例輸出 資料範圍與規定 對於...