数据结构与算法python答案,数据结构与算法python版 期末考试
0.数据结构定义堆栈:列表原生即可支持堆栈操作:
list.append():入栈;list.pop():出栈;未列出:堆栈是否为空;链表节点:
类列表节点(object):def _ _ init _ _(self,x): self.val=x self.next=None 1 .链表翻转链表:
def reverseList(head):cur,prev=head,Nonewhile cur:cur.next,prev,cur=prev,cur,cur.nextreturn prev#跳出正在…循环时,cur为无2。排序快速排序(快速排序)
形式一:借助划分辅助函数def partition(seq): pivot,seq=seq[0],seq[1:]low=[x for x in seq if x=pivot]high=[x for x in seq if x not in low]return low,pivot,high def qsort(seq):if len(seq)=1:return seq low,pivot,high=partition(seq)return qsort(low)[pivot]qsort(high形式二:直接返回数组def qsort(arr):if len(arr)=1:return arr pivot=arr[len(arr)//2]left=[x for x in arr if x pivot]middle=[x for x in arr if x==pivot]right=[x for x in arr if x pivot]return qsort(left)middle qsort(right
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。