int main()
{
    ListPriorityQueue<Point2D, LeftRight> points;
    points.insert(Point2D(3.5, 5.1));
    points.insert(Point2D(8.1, 6.7));
    points.insert(Point2D(1.5, 0.3));
    cout << points.size() << endl;
    while (!points.isEmpty())
    {
        Point2D p = points.min();
        cout << "X = " << p.getX() << ", Y = " << p.getY() << endl;
        points.removeMin();
    }
    return 0;
}
Exemplo n.º 2
0
int main()
{
	

	ListPriorityQueue<holder, less<holder> > pqueue;
	ListPriorityQueue<char,less<char> > pqueue2;
	ifstream inputFile;

    inputFile.open("Speech.txt");
    
    
    if(inputFile.fail())
    {
    	fprintf(stderr, "Error in reading file\n");
    	exit(1);
    }

    //this loop will continue until the end of the file is reached
    while(inputFile.peek() != EOF)
    {
            string s;
            getline(inputFile, s);
            int tempSize = s.size();
            
            for(int i = 0; i <= tempSize; i++)
            {
            	char temp = s[i];
            	pqueue2.insert(temp);
            }        
    } 

    inputFile.close();

    holder force;
    force.num = 0;

    while(pqueue2.empty() != true)
    {
    	char zaku;
    	zaku = pqueue2.min();
    	pqueue2.removeMin();

    	if(force.head == zaku)
    	{
    		force.plus();
    	}
    	else
    	{
    		pqueue.insert(force);
    		
    		force.head = zaku;
    		force.num = 1;
    	}

    }
    pqueue.insert(force);
	int i = 0;

    Node *tree;

    while(pqueue.empty()!=true)
    {

        cout << pqueue.min().head << " (" << pqueue.min().num << ")" <<  endl;
        
        Value putter;
        putter.data = pqueue.min().head;
        putter.numbers = pqueue.min().num;
        tree = insert(tree,putter);
        pqueue.removeMin();
       	i++;
    }

	return 0;
}