Seite 2 von 2

Verfasst: Dienstag 1. Mai 2007, 16:56
von schlangenbeschwörer
Ich hab mal was versucht...naja, nicht so perfekt, aber ein Ansatz...
geht auch nicht immer :lol:

Code: Alles auswählen

def splitlist(l):
    if len(l)>1:
        m=int(len(l)/2.0-0.5)
        returnlist=[]
        for x in (l[m],l[0:m],l[m+1:len(l)+1]):
            if x:
                returnlist.append(x)
        return returnlist
    else:
        return  (False,l[0])

def strange_sort(l):
        sorted_list=[]
        splited_list=splitlist(l)
        if splited_list[0]:
            sorted_list.append(splited_list[0])
            sorted_list.append(strange_sort(splited_list[1]))
            sorted_list.append(strange_sort(splited_list[2]))
        else:
            sorted_list.append(splited_list[1])
        return sorted_list
    
l1=[1,2,3,4,5,6,7]
print strange_sort(l1)
Gruß, jj