1) 힙 정렬 원리: 1. 배열 전체 최대 힙으로 바꾼다 2. 배열의 첫 원소(=최댓값)와 마지막 원소를 교환한다 3. 배열의 마지막 원소를 가르키는 포인터를 1 줄인다 4. 배열을 최대 힙으로 다시 바꿔준다 코드(파이썬): def heapsort(a,n): for i in range(n//2-1,0,-1): rebuildheap(a,i,n) heapsize = n for last in range(n-1,1,-1): a[0],a[last] = a[last],a[0] heapsize -= 1 rebuildheap(a,0,heapsize) def rebuildheap(a,r,n): current = r value = a[r] while 2*current + 1 < n: leftchild = 2*currren..