张一极
xxxxxxxxxx261'''21.将一个顺序表表头作为比较元素,大于表头的放在后面,小于表头的放在后面3从最后一个元素开始,往前寻找,直到有小于temp的存在,此时把表头的位置定下来,将对应位置的元素赋值给表头(此时表头数据已经在temp里可直接覆盖),接着从头开始,直到寻找到大于temp的数据,将这个数据赋值给end,接着继续循环,往下将大于的顺序表元素赋值到后面,将小于temp的数据表元素赋值到头部,直到i和j相遇,此时得到最后的位置即temp应该存在的位置4'''5list = [3,-1,-27,-4,-5,6,-1]6def move_element_ahead_end(A):7    i=08    j=len(A)-19    temp = A[0]10    while i<j:11        while i<j and A[j]>temp:12            j-=113            print(j)14        if i<j:15            print(A)16            A[i]=A[j]17            print(A)18            i+=119        while i<j and A[i]<temp:20            i+=121            print(i)22        if i<j:23            A[j]=A[i]24    A[i]=temp25    print(A)26move_element_ahead_end(list)xxxxxxxxxx171'''22.删除i-j范围内的数据,不增加新链表,使用j往后的(j-i)个数据覆盖前面(j-i)个元素,代码如下:3  细节一:remove后,每次list长度都会变短,会产生溢出数值4  细节二:dele_place的起点5  解决:删除-1个元素,循环n次,等同于删除n到len(data)长度的数据6'''7sqlist = [2,3,4,11,1,-2,39,10]8def dele_i2j_element(data,i,j):9    print("before:",data)10    out = 011    for replace_index in range(j,len(data)):12        data[i+(replace_index-j)]=data[replace_index]13        out = i+(replace_index-j)14    for dele_place in range(out+1,len(data)):15        data.remove(data[-1])16    print("after:",data)17dele_i2j_element(sqlist,1,6)