Doubly Linked Lists and Library Routine Problem

Okay so this is part of an assignment I have to do, but I am confused regarding the library routine as my professor has not covered it well. So my thing is what do it do to create the library...is it just a .h file with all the functions specified below. I know this is a big question, but I am just not sure how to tackle this problem. I don't expect codes by any means just pointers to the right direction. Any help is greatly appreciated. Thanks

Use Doubly linked list to model a sparse matrix. A row is represented as a vector of doubly linked list containing non-zero entries in the row. The element in the row vector also acts as a header for the corresponding doubly linked list, and contains the information about number of non-zero elements in the row. A column is represented as a vector of doubly linked list containing non-zero entries in the column. A column-vector also acts as the header for the doubly linked list for the non-zero elements in the corresponding column. A value node is modeled as a 7-tuple of the form (left pointer, Up pointer, row, column, value, down pointer, right pointer). Left pointer points to a node in the same row previous non-zero column; right pointer points to a node in the same row next non-zero column; up pointer points to the previous row with a non-zero entry in the same column, and down-pointer points to the next row with non-zero entry in the same column. Write a library routine to implement following methods: next_column_entry, next_row_entry, prev_row_entry, prev_column_entry, row_entries(row_number), column_entries(column_number), no_of_elements_in_row(row_number), no_of_elements_column(column_number), is_empty_row(row_number), is_empty_column(column_number), get_entry(row_number, column_number), set_entry(row_number, column_number, value), is_empty_matrix().
Yeah I saw my professor and each time he confuses me more... He actually edited the first portion of my code and said I don't need to use vectors. This is what it looks like now:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#include <iostream>
#include <vector>
using namespace std;

template <typename T>
class sparse
	{

//int rowsize = 100;
//int columnsize = 100;
		
		struct valuenode
		{	//7-tupple
			valuenode *left_pointer;
			valuenode *up_pointer;
			T rownumber;
			T columnnumber;
			T value;
			valuenode *down_pointer;
			valuenode *right_pointer;
		};

		valuenode *rows;
		valuenode *columns;
		
	};

template<typename T>
void next_column_entry();
{
	
}

template<typename T>
void next_row_entry();
{
	
}

template<typename T>
void prev_row_entry();
{
	
}

template<typename T>
void prev_column_entry();
{
	
}

template<typename T>
void row_entries();
{
	
}

template<typename T>
void column_entires();
{
	
}

template<typename T>
void no_of_elements_in_row();
{
	
}

template<typename T>
void is_empty_row();
{
	
}

template<typename T>
void is_empty_column();
{
	
}

template<typename T>
void get_entry();
{
	
}

template<typename T>
void set_entry();
{
	
}

template<typename T>
void is_empty_matrix();
{
	
}


int main()
{
		
}


Definitely a ton of work left to do. Anyone have any suggestions as to what I should do next, because my professor is not of very much help.
Topic archived. No new replies allowed.