C語言lI部落格作業02

2022-06-27 22:39:10 字數 2797 閱讀 4381

這個作業屬於哪個課程

這個作業要求在**

/homework/11810

這個作業的目標

《了解陣列相關知識,掌握選擇排序法》

學號<20208992>

第七章 陣列 7.17.1 輸出所有大於平均值的數

二、本週作業(總分:50分)

2.1 完成pta作業,並給出程式設計題完成截圖(5分)

程式設計題一

程式設計題二

2.2 題目:快速尋找滿足條件的兩個數

能否快速找出乙個陣列中的兩個數字,讓這兩個數字之和等於乙個給定的值,為了簡化起見,我們假設這個陣列中肯定存在至少一組符合要求的解。

解法一:採用窮舉法,從陣列中任意取出兩個數字,計算兩者之和是否為給定的數字。

**一

測試資料:

輸入資料sum

輸入陣列值

輸出下標

21 2 1 4

0和26

2 2 3 4

0和3 1和3

解法二:對陣列中的每個數字arr[i]都判別sum-arr[i]是否在陣列中。

**二

測試資料:

輸入資料sum

輸入陣列值

輸出下標

42 3 1 2

0和3 1和2

62 3 4 5

0和2解法三:對陣列進行排序,然後使用二分查詢法針對arr[i]查詢sum-arr[i]。

**三

測試資料:

輸入資料sum

輸入數值數

輸出下標

2010 11 8 9 12

0和4 1和3

6040 41 42 38 39

0和4 1和3

2.請說明三種演算法的區別是什麼?你還可以給出更好的演算法嗎?(10分)

難易程度不一樣。暫時沒有了。

2.3 請搜尋有哪些排序演算法,並用自己的理解對集中排序演算法分別進行描述(5分)

選擇排序法:在陣列中選擇乙個最大或者最小的數排在前面,再從剩下的數中選擇排在後面。

氣泡排序法:比如說公升序排列,那麼就依次相鄰兩個數比較大小,然後把大的數放在後面。

插入排序法:它通過構建有序序列,對於未排序的資料序列,在已排序序列中從後向前掃瞄,找到相應的位置並插入。

希爾排序法:希爾排序在插入排序的基礎上進行了改進,它的基本思路是先將整個資料序列分割成若干子串行分別進行直接插入排序,待整個序列中的記錄基本有序時,再對全部資料進行依次直接插入排序

快速排序法:首先從數列中挑出乙個元素,重新排序數列,所有比基準值小的元素擺放在基準前面,所有比基準值大的元素擺在基準後面(相同的數可以到任何一邊)。在這個分割槽結束之後,該基準就處於數列的中間位置。之後,在子串行中繼續重複這個方法,直到最後整個資料序列排序完成。

歸併排序法:歸併排序嚴格遵循從左到右或從右到左的順序合併子資料序列, 它不會改變相同資料之間的相對順序, 因此歸併排序是一種穩定的排序演算法.

2.4 請給出本週學習總結(15分)

1 學習進度條(5分)

周/日期

這週所花時間

**行學到的知識點簡介

目前比較迷惑的地方

1/3.4

5h150

寫檔案檔案的讀寫,多資料的儲存

2/3.11

8h160

陣列和選擇排序法

其他排列法的運用

2 累積**行和部落格字數(5分)

3 學習內容總結和感悟(5分)

1。學習中欠的都是要還的,很多模糊的小知識點我不去搞懂,最後寫題中就會很難。

2.接著一直努力下去吧。

3. 氣泡排序(bubble sort),是一種電腦科學領域的較簡單的排序演算法。

它重複地走訪過要排序的元素列,依次比較兩個相鄰的元素,如果順序(如從大到小、首字母從z到a)錯誤就把他們交換過來。走訪元素的工作是重複地進行直到沒有相鄰元素需要交換,也就是說該元素列已經排序完成。

C語言 部落格作業02

這個作業屬於哪個課程 c語言程式設計 這個作業要求在 c語言部落格作業02 我在這個課程的目標是 將想法在計算機上表達出來 這個作業在那個具體方面幫助我實現目標 了解計算機語言設計 參考文獻 提問的智慧型 答 提問之前,應該先想想這個問題上自己是否盡力去求解了,如果沒有就先自己嘗試。發問時,要知道你...

C語言 部落格作業02

這個作業屬於哪個課程 c程式語言設計 這個作業要求在 我在這個課程的目標是 學習基礎程式語言c語言,基本掌握c語言的思維方向 這個作業具體在哪個方面幫助我實現目標 程式設計的訓練,markdown的語法練習,編譯器的安裝 參考文獻 markdown語法小結 提問的智慧型 pta系統常見問題解答 mi...

C語言 部落格作業02

問題 答案這個作業屬於哪個課程 c語言程式設計 這個作業要求在 我在這個課程的目標是什麼 學好c語言,打好基礎,可以熟練的打好 和程式設計 這個作業在哪個具體的方面幫助我實現目標 學會了如何提問,對程式設計有了初步的了解,該怎麼樣打 參考文獻 提問的智慧型 pta系統常見問題解答 c語言程式與設計 ...