成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

如何實(shí)現(xiàn)雞尾酒排序算法

在我們做開(kāi)發(fā)中,不論你采用什么語(yǔ)言做開(kāi)發(fā)工具,都需要積累,或者掌握一些算法,作為我們解決一些業(yè)務(wù)的手段;其中,在排序的算法,雞尾酒排序作為經(jīng)典算法中的一種,歷來(lái)為廣大程序員所喜愛(ài),筆者本人也是受益匪淺

在我們做開(kāi)發(fā)中,不論你采用什么語(yǔ)言做開(kāi)發(fā)工具,都需要積累,或者掌握一些算法,作為我們解決一些業(yè)務(wù)的手段;其中,在排序的算法,雞尾酒排序作為經(jīng)典算法中的一種,歷來(lái)為廣大程序員所喜愛(ài),筆者本人也是受益匪淺;下面,就通過(guò)實(shí)例來(lái)講解一下,如何實(shí)現(xiàn)雞尾酒排序算法。

問(wèn)題簡(jiǎn)介和思路

a)問(wèn)題:有一長(zhǎng)度為n的數(shù)組,我們要把數(shù)組內(nèi)的數(shù)據(jù),按照從小到大的順序排列出來(lái);

b)思路:雞尾酒排序,又稱攪拌排序和漣漪排序,也稱為冒泡派排序,只不過(guò)這里是雙向冒泡排序法;其過(guò)程是:

i. 先對(duì)數(shù)組從左到右進(jìn)行升序的冒泡排序;

ii. 再對(duì)數(shù)組進(jìn)行從右到左的降序的冒泡排序;

iii. 以此類推,持續(xù)的、依次的改變冒泡的方向,并不斷縮小沒(méi)有排序的數(shù)組范圍;

iv. 例如:對(duì)數(shù)組內(nèi)的602、544、414、21這幾個(gè)成員進(jìn)行排序,

從左到右:21、602、544、414

從右到左:21、414、602、544

從左到右:21、414、544、602

實(shí)例/步驟

a)創(chuàng)建一個(gè)控制臺(tái)應(yīng)用程序,該程序中首先定義個(gè)靜態(tài)的int類型的數(shù)組,用來(lái)準(zhǔn)備排序的數(shù)組;數(shù)組為:static int[] intArray;

b)定義一個(gè)類,這個(gè)類是為了對(duì)數(shù)組內(nèi)其中的的兩個(gè)數(shù)進(jìn)行交換排序用的;方法名為:change;如下:

c)定義一個(gè)方法,這個(gè)方法是用來(lái)實(shí)現(xiàn)雞尾酒排序的方法,這個(gè)數(shù)組是一維數(shù)組,,類型為int型,方法名為:CatchSorts;如下:

d)再定義一個(gè)方法,用來(lái)調(diào)用CatchSorts()對(duì)指定的數(shù)組進(jìn)行雞尾酒排序,該方法中定義個(gè)一個(gè)一維的int型數(shù)組,用來(lái)表示要排序的數(shù)組,方法名為:sort;如下:

e)最后,在Main方法中,我們首先定義一個(gè)int類型的數(shù)組,然后調(diào)用sort()來(lái)進(jìn)行排序,最后循環(huán)遍歷出數(shù)組中的每個(gè)數(shù)字;如下:

最后的效果如下圖:

標(biāo)簽: