/* $Id: heap.h 4025 2008-10-01 00:01:14Z abehm $ Copyright (C) 2007 by The Regents of the University of California Redistribution of this file is permitted under the terms of the BSD Public license Date: 05/14/2007 Author: Jiaheng Lu */ #ifndef _heap_h_ #define _heap_h_ #include #include #include "util/array.h" using namespace std; void showlistUnsigned(list *v); void makeInitialHeap(vector *heap, const vector< Array*> &lists); unsigned getMinInHeap(vector *heap); void deleteMAXUnsignedfromEachList (const vector< Array* > &lists); void heapReplaceHead(unsigned newData, unsigned data[], unsigned index[], unsigned size); void heapInsert(unsigned newData, unsigned newIndex, unsigned data[], unsigned index[], unsigned &size); void heapDelete(unsigned data[], unsigned index[], unsigned &size ); void addMAXUnsigned2EachList(const vector< Array* > &lists, unsigned MAXUnsigned); void makeInitialHeap(unsigned dataHeap[], unsigned indexHeap[], const vector< Array* > &lists); void deleteMAXUnsignedfromEachList(const vector*> &lists); #endif