Ejemplo n.º 1
0
def partation(ll, K):
    """
    Kの大きさで分割して並び替えたものを返す。
    """
    n = ll
    left, right = Node(), Node()
    while True:
        if n.data < K:
            left.appendToTail(n.data)
        else:
            right.appendToTail(n.data)
        if n.next == None:
            break
        n = n.next

    # これだと宣言の関係上一番始めがNoneになっているのでとりのぞいてから連結する
    right = right.get_Nth_node(1)
    left = left.get_Nth_node(1)
    left.appendNodeToTail(right)
    return left