1. 程式人生 > >[初學python]編寫氣泡排序

[初學python]編寫氣泡排序

先上原始碼:
涵蓋的知識點

  1. GUI介面編寫
  2. for迴圈
  3. str拼接list
#coding=utf-8
import random
from Tkinter import *
import tkMessageBox

root=Tk()
def _maopao_sort_(list):
    for i in range(len(list)):
        j=i+1
        print (i,j)
        for j in range(i+1,len(list)):
            if list[i] > list[j]:
                print(i,list[i],j,list[j])
                temp=list[j]
                list[j]=list[i]
                list[i]=temp
                print
(list) result='排序結果'+','.join(map(str,list)) tkMessageBox.showinfo('Title',result) text.insert(INSERT,'\n'+result) def click(): tkMessageBox.showinfo('Hello', 'hello python') if __name__ == '__main__': items=[1,2,3,4,5,11,12,15,10] random.shuffle(items) text=Text(root) text.insert(INSERT,'待排序陣列'
+''.join(map(str,items))) text.pack() button=Button(root,text='氣泡排序',command=lambda:_maopao_sort_(items)) # button=Button(root,text='冒泡',command=click) button.pack() root.mainloop() print (items) # print (range(len(items))) # _maopao_sort_(items)

相關推薦

[初學python]編寫氣泡排序

先上原始碼: 涵蓋的知識點 GUI介面編寫 for迴圈 str拼接list #coding=utf-8 import random from Tkinter import * import tkMessageBox root=Tk() def _ma

python編寫氣泡排序函式,可以排序任意型別的元素,可以逆序

1.實現氣泡排序演算法2.可以排序任意型別的元素3.能夠通過引數設定進行逆序,預設升序用for in 遍歷元素和if else處理。直接排序,根據鍵排序兩種情況,各自又分為升序和降序兩種情況排序。def list_sort(lt, key=None, reverse=Fals

Python 演算法 - 氣泡排序

# coding=utf-8 # 氣泡排序 def bubble_sort(lists): """ 它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。 走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。

python氣泡排序(一)

氣泡排序 氣泡排序(英語:Bubble Sort)是一種簡單的排序演算法。它重複地遍歷要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。 遍歷數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢“浮”到數列的頂端。 氣

python java氣泡排序

  氣泡排序:將陣列相鄰的元素值一次比較,把大的值放在後面的元素中,陣列迴圈一圈後,則把最大元素值互換到了最後一個元素中。陣列再迴圈一圈後,把第二大的元素值互換到了倒數第二個元素中。按照這種方式,陣列迴圈多圈以後,就完成了陣列元素的排序。 1.使用for迴圈(外層迴圈),來指定陣列

Python實現氣泡排序,選擇排序,快速排序

氣泡排序 原理 : 氣泡排序(Bubble Sort)也是一種簡單直觀的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。 def bubble_sor

Python--重溫氣泡排序與選擇排序

今天又看了一下資料結構,就想著寫一下比較常見的排序, 冒泡的挨著的比較 li=[1,6,8,3,4,7,9] def maopao(): for i in range(len(li)-1): for j in range(i,len(li)-1): if li[j]>li[j+1]:

python氣泡排序和選擇排序及其區別

氣泡排序:每次去相鄰的兩個元素比較,不合適就交換,依次向後 選擇排序:將第一個元素和後面的元素挨個輪流比較,如果按照從小到大排序,大的排序往後面 #排序函式 def paixu(li): for j in range(1, len(li)): #j是外層迴

python實現氣泡排序演算法的方法

list = [] print('你想排列幾個數?') try: num = int(input()) for i in range(num): a = int(inpu

python複習氣泡排序

氣泡排序: 思路: 先找到最大值放到最右邊: #encoding=utf-8   a=[1,9,2,8,3,6,4] print "a before change:",a for i in range(len(a)-1):     if a[i] >

python語法基礎之:使用python實現-氣泡排序

接上回,之前說過在做美女人體藝術站,需要採集資料,使用的是python進行採集,從而開始學習python語法知識,現在分享下使用python進行氣泡排序的語句 氣泡排序(英語:Bubble Sort)是一種簡單的排序演算法。它重複地遍歷要排序的數列,一次比較兩個元素,如

Python實現氣泡排序

最近在學習Python,下面是我的一些筆記 氣泡排序 實現思路 : 使用雙重for迴圈,內層變數為i, 外層為j,在內層迴圈中不斷的比較相鄰的兩個值(i, i+1)的大小,如果i+1的值大於i的值,交換兩者位置,每迴圈一次,外層的j增加1,等到j等於n-

Python氣泡排序

Python中氣泡排序演算法: #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2017-04-12 12:20:39 # @Au

c語言 編寫氣泡排序排序一個整形陣列(從小到大)

                程式:不妨按從小到大排序 #include <stdio.h>

hadoop平臺使用python編寫mapreduce排序小程式

編寫環境 hadoop-2.6.5 python-2.7.5 xshell連線 金山雲平臺,一臺master,3臺selvet 資料型別 g 445 a 1117 b 222 c 333 d 444 e 123 f 345 h 456

利用Python實現氣泡排序

今天說一個比較簡單易懂的演算法,相信大家在大學裡面肯定都有接觸過。在這裡介紹排序演算法的一種氣泡排序,對於初學Python的新人來說因該很容易理解。排序顧名思義,對給定的一串字元(其實也不一定是字元,可以是其他可比較的元素)按照從大到小或者從小到大的順序排列。

python氣泡排序和快速排序

def BubbleSort(l1): for i in range(0,len(l1)-1): is_swap=False #這裡判斷若j迴圈完成沒有發生交換則排序完成,初始化False for j in range(0,len(l1

python氣泡排序法和快速排序

快速排序法的核心在於:1.先從數列中取出一個數作為基準數。2.分割槽過程,將比這個數大的數全放到它的右邊,小於或等於它的數全放到它的左邊。3.再對左右區間重複第二步,直到各區間只有一個數。 #氣泡排序法 def bubling_sort(list): for i i

python氣泡排序

冒泡就是重複地遍歷要排序的數列,一次比較兩個元素(泡泡),如果他們的順序錯誤就把他們交換過來,像泡泡一樣,依次按照順序上升排列。  氣泡排序演算法的運作如下: 比較相鄰的元素。如果第一個比第二個大(升序),就交換他們兩個。 對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。這步做完後,

python 資料結構與演算法 day04 氣泡排序

1. 氣泡排序 思路: 可以看做按對高低不一的一組學生按照大小個排隊,校長從每次從頭開始走,觀察當前站的位置與後一個位置元素大小進行比較,如果比當前元素大,就交換兩者的位置,然後往後走一步,接著比較當前元素與後一個位置元素大小,重複剛才的過程,,,校長一次從頭走到尾的遍歷過程最大位置的元素跟著走到了最後,