冉翠翠,荀 珂
(河南農(nóng)業(yè)職業(yè)學院,河南 鄭州 451450)
隨著我國信息技術(shù)的普遍應用,計算機信息技術(shù)以及軟件開發(fā)的技術(shù)也相對得到了一定的提升,計算機程序設計的科學性使得其應用的越來越廣泛,計算機程序設計的廣泛應用使軟件開發(fā)的技術(shù)也隨之提升,因此,在這樣的背景下,計算機程序設計的排序問題成為其中的重要組成部分,信息技術(shù)的普遍應用對計算機程序設計排版提出更高的要求,因此,必須確保計算機程序設計排序中排序的有效性,才能夠進一步保證無序列數(shù)據(jù)元素在計算機程序中科學合理進行排列,無序列元素排序的有效性從而進一步提升進算計對數(shù)據(jù)信息查找的效率。信息技術(shù)的提升導致計算機程序設計的方法相對較多,在設計過程中容易受到多方面的影響因素,因此,對計算機程序設計的排序問題進行研究探討是非常有必要的,有效的探討對計算機的程序設計排序具有一定的實踐意義與應用價值。
排序的問題是計算機程序設計中較為重要的部分,排序是相對復雜的一個環(huán)節(jié),如果排序問題沒有進行妥善的處理,直接會影響計算機程序?qū)π畔z索的有效性造成影響。正常情況下,為方便對信息以及數(shù)據(jù)進行查找,計算機中的表往往都會按照關(guān)鍵字進行排列,方便操作人員能夠以最快的速度查找所需要的信息,從而提高操作人員的查找效率,所以,有效的排序是計算機程序設計的關(guān)鍵。計算機程序設計中待排序記錄數(shù)量存在差別,所以,儲存器的使用也需要根據(jù)待排序的記錄數(shù)量進行選取,因此,可以將計算機程序設計的排序分為兩種形式:內(nèi)部排序和外部排序,由于排序方法的不同,所以排序的穩(wěn)定性以及算法的復雜性也有一定的差別[1]。當前計算機程序設計都想要最大程度做到對任意給定問題進行復雜設計,從而達到簡算的目的,所以,為確保計算機程序排序的有效性以及科學性,相關(guān)人員必須要提升對計算機程序排序的認識,進一步為計算機程序的設計提供有效的參考。
計算機程序設計以及軟件開發(fā)是為了能夠?qū)崿F(xiàn)一些功能,因此,計算機程序設計所涉及的知識面較廣,所以沒在排序操作的過程中相關(guān)的數(shù)據(jù)信息也較為復雜,導致計算機程序設計的排序問題較為復雜,雖然在排序中可以選取最佳的計算機程序設計方案,但是因開發(fā)軟件自身的性質(zhì)以及特點,導致排序問題依舊存在復雜性[2]。另一方面是排序問題的不確定性,實際的計算機程序設計過程中,不會一次成型,需要對相關(guān)的數(shù)據(jù)進行反復的修改以及調(diào)整,所以,計算機程序設計中會發(fā)生各式各樣的狀況,排序問題也因此發(fā)生改變,數(shù)據(jù)或是記錄進行修改的情況是計算機程序設計過程中時常發(fā)生的現(xiàn)象,因此,提高了排序問題的不確定性。
計算機軟件設計過程中,排序的合理性會對計算機程序設計造成直接的影響,而且在實際的軟件開發(fā)過程中,各種類型的數(shù)據(jù)資源都是相互制約的,數(shù)據(jù)與數(shù)據(jù)之間的制約也對計算機程序設計的排序造成一定影響,所以,軟件開發(fā)中多約束性也是影響排序的關(guān)鍵問題[3]。另一方面,計算機程序設計中,對一些數(shù)據(jù)資源存放是隨機的,而且在這個過程中所存放的數(shù)據(jù)資源都是相對重要的,能夠在同一時間被不同的目標選用,因此,在計算機程序設計中,對排序問題的處理還應參照有關(guān)數(shù)據(jù)的選用目標以及相關(guān)標準,從而對排序問題進行優(yōu)化,避免數(shù)據(jù)資源引用混亂的現(xiàn)象發(fā)生,因此,多目標性也是影響排序問題的部分。
不同的計算機程序設計所用到的排序方法相對不同,所以,在計算機程序設計過程中選出符合程序設計的排序方法是較為關(guān)鍵的,排序方法的選擇能夠在一定程度上優(yōu)化排序的問題,排序問題的優(yōu)化能夠提升計算機程序設計的質(zhì)量,還能夠增強開發(fā)軟件的功能,進一步發(fā)揮程序功能的實際作用,推動計算機軟件開發(fā)行業(yè)的快速發(fā)展,提高生產(chǎn)力的同時提升市場的核心競爭力。基于此,排序方法主要有以下幾種。
冒泡排序法主要是指在計算機程序設計的排序中,對相鄰的元素進行對比,將最小數(shù)值的數(shù)據(jù)調(diào)至最前面,多所有數(shù)據(jù)元素進行對比,直到將全部的數(shù)據(jù)對比完成。例如關(guān)鍵數(shù)值元素為“8、7、4、13、1”的冒泡排序中,其一是將數(shù)據(jù)中的“8”和“7”進行對比,將數(shù)據(jù)元素“7”調(diào)到前面,從而使關(guān)鍵字變?yōu)椤?、8、4、13、1”;其二是將“8”和“4”驚醒對比,從而將“4”調(diào)至最前面,則關(guān)鍵字變?yōu)椤?、4、8、13、1”;其三是將“8”和“13”進行對比,關(guān)機數(shù)字不斷,最后是將“13”和“1”進行比較,將“1”調(diào)至“13”前面。數(shù)值元素則變?yōu)椤?、4、8、1、13”進一步完成冒泡排序法。
在計算機程序設計中,最為常用的數(shù)據(jù)排序方法就是快速排序法。快速排序法能夠在一定程度上提高計算機程序設計的質(zhì)量,降低程序中的誤差,進一步增強其功能,快速排序法的核心是將原始數(shù)據(jù)分為兩個部分,而且兩個部分的原始數(shù)據(jù)要么都是大要么都是小,這就需要兩個指針來完成,例如一組數(shù)據(jù)元素為“48、36、60、92、71、12、22、48’”通過第一次的掃面排序可以知道“[22、36、13]48[71、92、60、48]”的結(jié)果,通過第二次的排序[12]23[36]48[48’60]71[92]的結(jié)果,第三次排序的結(jié)果為12、23、36、48、48’、60、71、92,因此,可以知道,快速排序法能夠在一定程度上滿足程序設計人員的實際需求,進一步提高計算機程序設計的質(zhì)量。
選擇排序法指通過交叉對比的方式對需要進行排序的元素進行調(diào)整并且確認,進一步選擇適合排序的數(shù)據(jù)元素,計算機程序設計中,選擇排序法的應用可以根據(jù)設計人員對計算機程序設計排序的算法進行分析,最后確定并選取最有效的排序方法,選擇排序法與冒泡排序法較為相似,在選擇排序中,利用一個輔助的單元,而排序所消耗的時間和工效率與n之間有著較為緊密的聯(lián)系,在這個過程中,主要是分為正序和逆序的方式,正序中比較次數(shù)的計算方式為n(n-1)/2,移動為0;在逆序中,比較次數(shù)的計算方式與正序的計算方式相同,但是移動的次數(shù)為3(n-1),因此,計算機程序設計的排序方法應該進行合理的選擇。
在實際的計算機程序設計過程中,為了能夠解決計算的排序問題,需要科學地選擇計算機程序設計的排序方法,計算機程序設計排序方法的合理選擇能夠有效地保障計算機程序設計的質(zhì)量以及計算機程序的效率[4]。在實際程序設計過程中,選取的排序方法不同,所用的時間也因此不同,因此,設計人員所要考慮到的問題也要全面,對排序中n值與排序方法之間的聯(lián)系進行全面的考慮,對n相對較小的數(shù)值可以使用插入法和直接選擇法,這種方式能夠?qū)π畔⒘枯^大的內(nèi)容進行有效的記錄,是最為符合的排序方式,相對的,n值較大,則選擇復雜程度相對較小的排序方式進行計算機程序的設計,例如快速排序法,在實際的排序中,始終最多的一般都是快速排序法,因其用時較少,而且質(zhì)量相對較高。
計算機程序設計的核心是為能夠給相關(guān)計算機軟件正常執(zhí)行提供一定的保障,但是,當前排序的問題已經(jīng)對計算機程序設計的質(zhì)量產(chǎn)生了一定的影響,因此,加強計算機程序設計的排序問題是當前計算機發(fā)展的必然趨勢,解決當前存在的計算機程序設計排序的問題才能夠較好地保障計算機軟件的正常執(zhí)行。