创新工场笔试算法题附答案.doc
- 132****2141个人认证 |
- 2021-03-09 发布|
- 14.72 KB|
- 9页
创新工场笔试算法题附答案
创新工场xx笔试算法题汇总附答案 #include usingnamespa ___ std; void SwapValue(int &m, int &n) int temp = m; m = n; n = temp; void ___x_heap(vector &vec, int i, int heap_size) int l = 2*i; int r = 2*i+1; int largest = i; if(l<=heap_size && vec[l-1]>vec[largest-1]) largest = l; if(r<=heap_size && vec[r-1]>vec[largest-1]) largest = r; if(largest!=i) SwapValue(vec[largest-1],vec[i-1]); ___x_heap(vec, largest, heap_size); void heapSort(vector &vec) int heap_size = vec.size(); for(int i=heap_size/2; i>=1; i–) ___x_heap(vec, i, heap_size); for(int i=heap_size; i>=1; i–) SwapValue(vec[0],vec[i-1]); ___x_heap(vec, 1, i); void print(vector vec) for(int i=0; i cout< cout< int ___in() vector vec; vec.push_back(23); vec.push_back(5); vec.push_back(1