2025年5月16日 星期五

sort sample

 arr = [3,5,10,1,7,9,8,6,4,2]

def qsort(arr):

  if len(arr)<=1:return arr

  pv = arr[0]

  lar = [i for i in arr if i<pv]

  mar = [i for i in arr if i==pv]

  rar = [i for i in arr if i>pv]

  return qsort(lar)+mar+qsort(rar)


def ssort(arr):

  if len(arr)<=1:return arr

  minv = min(arr)

  arr.remove(minv)

  return [minv] + ssort(arr)

 

def isort(arr):

  arr1 = []

  for i in arr:

    arrs = [j for j in arr1 if j <i]

    arrb = [j for j in arr1 if j >i]

    arr1 = arrs + [i] +arrb 

  return arr1


def bsort(arr):

  l = len(arr)

  for i in range(l-1):

    for j in range(l-1):

      if arr[j]>arr[j+1]:

        arr[j],arr[j+1]=arr[j+1],arr[j]

  return arr


print(qsort(arr))

print(ssort(arr[::]))

print(isort(arr))

print(bsort(arr))

沒有留言:

張貼留言