C語言II部落格作業02

2022-06-28 23:18:16 字數 2051 閱讀 3069

這個作業屬於哪個課程

這個作業要求在**

homework/11810

這個作業的目標

學會使用一位陣列解決問題,掌握選擇排序法和二分查詢法

學號20199259

1.解法一:

輸入輸出輸出7

1625

34解法二:

輸入輸出

輸出1019

2837

46解法三:

輸入輸出

輸出7, 1 3 2 6 4 5 9 7 8 1034

2561

432.區別:

解法一**比較簡單,需要將陣列中每個數兩兩與給定值去比較,判斷兩個值之和是否為給定值。

解法二**較複雜,需要用給定值減去陣列中的其中乙個,再將所得的值去和剩下的值比較。

解法三用到了二分查詢法和排序法,先要將陣列中的數排序,然後再用二分查詢法找到滿足條件的陣列元素,縮小了比較的範圍,提高了運算效率。

無法給出更好的演算法

插入排序:將待排序的無序數列看成是乙個僅含有乙個元素的有序數列和乙個無序數列,將無序數列中的元素逐次插入到有序數列中,從而獲得最終的有序數列

氣泡排序:在要排序的一組數中,對當前還未排好序的範圍內的全部數,自上而下對相鄰的兩個數依次進行比較和調整,讓較大的數往下沉,較小的往上冒。即:每當兩相鄰的數比較後發現它們的排序與排序要求相反時,就將它們互換。每一趟排序後的效果都是講沒有沉下去的元素給沉下去。

快速排序:快速排序演算法的基本思想為分治思想。

先從數列中取出乙個數作軸值(基準數)pivot;

根據基準數將數列進行分割槽,小於基準數的放左邊,大於基準數的放右邊;

重複分割槽操作,知道各區間只有乙個數為止

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

1 學習進度條(5分)

所花時間

**行學習內容

迷惑點第一周

10h700行

檔案的學習與使用

無第二週

12h800行

陣列和選擇排序法和二分查詢法

排序法的運用

感悟:1.本週學習了陣列,掌握了一點點選擇排序法和二分查詢法的知識並且能運用解決一些問題。

2.在艱難的學習同時也在進步,學到了新的知識

3.要多提前複習,對於很多知識要練習幾遍。

氣泡排序,是一種電腦科學領域的較簡單基礎的排序演算法。其基本思路是,

對於一組要排序的元素列,依次比較相鄰的兩個數,將比較小的數放在前面,

比較大的數放在後面,如此繼續,直到比較到最後的兩個數,將小數放在前面,

大數放在後面,重複步驟,直至全部排序完成。

C語言II部落格作業02

作業屬於哪個課程 班級的鏈結 這個作業要求在 作業要求的鏈結 這個作業的目標 熟練運用陣列進行程式設計,學會使用一維陣列進行程式設計,掌握選擇排序法和二分查詢法 學號20208927 2.1 完成pta作業,並給出程式設計題完成截圖 2.2 題目 快速尋找滿足條件的兩個數 能否快速找出乙個陣列中的兩...

C語言II部落格作業02

這個作業屬於哪個課程 這個作業要求在 homework 11423 這個作業的目標 學習檔案的使用與知識 學號 20209165 1.學生知道在哪種情況下可以使用構造資料型別 陣列進行資料的處理 2.掌握用一維陣列進行程式設計 3.掌握選擇排序法和二分查詢法 能否快速找出乙個陣列中的兩個數字,讓這兩...

C語言II部落格作業02

這個作業屬於哪個課程 這個作業要求在 homework 11808 這個作業的目標 熟練的掌握陣列的編譯概念還有排序法 學號 20209222 第七章 陣列 7.17.1 輸出所有大於平均值的數 1.學生知道在哪種情況下可以使用構造資料型別 陣列進行資料的處理 2.掌握用一維陣列進行程式設計 3.掌...