1. 冒泡排序、选择排序 ```python def bubble_sort(l): for i in range(len(l), 0, -1):
      1. for j in range(1, i):
      2. if l[j-1] > l[j]:
      3. l[j-1], l[j] = l[j], l[j-1]
      return l

    def select_sort(l): for i in range(len(l)): max_pos = l.index(max(l[i:])) l[i], l[max_pos] = l[max_pos], l[i] return l

    li = [34, 32, 67, 23, 12, 7, 4, 1]

    print(bubble_sort(li.copy())) print(select_sort(li.copy()))

    
    2. 代码
    
    2.1 九九乘法表
    ```python
    for i in range(1, 10):
        for j in range(1, i+1):
            if i == j:
                print(f"{i} x {j} = {i*j}")
            else:
                print(f"{i} x {j} = {i*j}", end=', ')
    

    2.2 完全数

    def perfect_number_judgement(num):
        gap = int(num**0.5)
    
        factors = []
        for i in range(1, gap+1):
            if num % i == 0:
                factors.append(i)
                if i!=1 and i*i != num:
                    factors.append(num//i)
    
        return sum(factors) == num
    

    2.3 排列组合

    import itertools as it
    
    def permutation_combination(nums, need: int):
        return [list(it.permutations(each)) for each in it.combinations(nums, need)]
    
    print(permutation_combination({1, 2, 3, 4}, 3))