Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

i am only familiar with c++...i need this .py syntax converted to c++.. i want i

ID: 3532175 • Letter: I

Question

i am only familiar with c++...i need this .py syntax converted to c++.. i want it to use a vector... i could also use some .cpp code to test its funtionality but i would take that as a bonus..



# include <iostream>
# include <vector>






def __init__(self, items=None):
   self.heap = [None]
if items is None:
   self.heap_size = 0
else:
   self.heap += items
   self.heap_size = len(items)
   self._build_heap()

def size(self):
   return self.heap_size

def insert(self, item):
   self.heap_size += 1
   self.heap.append(None)
   position = self.heap_size
   parent = position
while parent > 0 and self.heap[parent] < item:
   self.heap[position] = self.heap[parent]
   position = parent
   parent = position
   self.heap[position] = item

def delete_max(self):
   if self.heap_size > 0:
       max_item = self.heap[1]
       self.heap[1] = self.heap[self.heap_size]
       self.heap_size -= 1
       self.heap.pop()
   if self.heap_size > 0:
       self._heapify(1)
       return max_item

def _heapify(self, position):
       item = self.heap[position]
   while position * 2 <= self.heap_size:
       child = position * 2
   if right child, determine maximum of two children
   if (child != self.heap_size and
       self.heap[child+1] > self.heap[child]):
       child += 1
   if self.heap[child] > item:
       self.heap[position] = self.heap[child]
       position = child
   else:
   break
       self.heap[position] = item

def _build_heap(self):
# 1 through self.heap_size
for i in range(self.heap_size // 2, 0, -1): # stops at 1
self._heapify(i)

Explanation / Answer

Use shedskin an online python to c++ converter
http://shed-skin.blogspot.in/