﻿ C exercises and solutions: min and max elements

# C exercises and solutions: min and max elements

## Circularly Linked List

### Min and Max elements of circularly linked list

Step 5: Showing the minimum and maximum items

To find the minimum item of the circularly linked list, you need to compare each item of the list by allowing a min variable to point to the first item of the list then starting to compare its data with its next item. If the data of its next item is less than the data of the min, simply allow the min to catch the next item.

//Find min item ListElem *findmin(ListElem *L){
ListElem *min,*tr;
min=L;

if(L!=NULL){
tr=L->next;
while(tr!=pfirst){
if(tr->data<min->data) min=tr;
tr=tr->next;
}
return min;
}
else return NULL;//empty list

}

Finding the maximum item of the circularly linked list can be done similarly as finding the minimum item. You need to compare each item of the list by allowing a max variable to point to the first item of the list then starting to compare its data with its next item. If the data of its next item is greater than the data of the max, simply allow the max to catch the next item.

//Find max item
ListElem *findmax(ListElem *L){
ListElem *max,*tr;
max=L;

if(L!=NULL){
tr=L->next;
while(tr!=pfirst){
if(tr->data>max->data) max=tr;
tr=tr->next;
}
return max;
}
else return NULL;//empty list

}

### Comments

This website intents to provide free and high quality tutorials, examples, exercises and solutions, questions and answers of programming and scripting languages:
C, C++, C#, Java, VB.NET, Python, VBA,PHP & Mysql, SQL, JSP, ASP.NET,HTML, CSS, JQuery, JavaScript and other applications such as MS Excel, MS Access, and MS Word. However, we don't guarantee all things of the web are accurate. If you find any error, please report it then we will take actions to correct it as soon as possible.