Friday, May 18, 2018

c++ - LinkedList Part

I think I might have done something right, headByRating and headByName both refer to the same address.




I have been drawing diagras working all day trying new things etc, and i havent really made any progress.



I have two list pointers, headByRating and headByName.
and two node pointers nextByName and nextByRating.



Somehow I need to be able to sort this stuff by its name and rating.
I've been thinking that I do that by each of the ptrs' address'.



2 statements as an example that I have been trying to sort:





//main.cpp

list *wineries = new list();
wineries->insert(winery("Lopez Island Vinyard", "San Juan Islands", 7, 95));
wineries->insert(winery("Gallo", "Napa Valley", 200, 25));


the winery ctor is fine everything is allocated and into the object at this point:





//list.cpp
void list::insert( const winery& winery )
{
list *listPtr = new list(); // havent really used the list obj. yet.

node *current = new node( winery ); // winery is now a node.
node *temp = current; // temp knows about the nodes address.

while ( temp->nextByName != NULL )

{
// check for null and reassign
temp = temp->nextByName;
}
node *new_node = new node( winery ); // creating a new node.
new_node->item = winery;
new_node->nextByName = new_node;
new_node->nextByRating = new_node;
}




// list.h
struct node
{
winery item;
node * nextByName;
node * nextByRating;
};


class list
{
...
private:
node * headByName;
node * headByRating;
};


What is a good approach to this? I dont think im doing this right.

No comments:

Post a Comment

plot explanation - Why did Peaches' mom hang on the tree? - Movies & TV

In the middle of the movie Ice Age: Continental Drift Peaches' mom asked Peaches to go to sleep. Then, she hung on the tree. This parti...