Необходимо найти минимальный и максимальный элемент в списке и обеспечитить вывод элементов списка, которые находятся между максимальным и минимальным элементом в обратном порядке. Функции нахождения мин и макс написала, функция вывода в обратном порядке тоже есть. Подскажите, как опеспечить вывод не всех элементов, а именно между макс и мин? Спасибо за внимание!
#include <iostream>
using namespace std;
struct t2node
{
int info;
t2node *next;
t2node *prew;
};
typedef t2node * p2node;
void formDouble (p2node *left, p2node *right)
{
int info;
p2node cur;
cur=nullptr;
cin>>info;
*left=*right=NULL;
if (info)
{
*left = new t2node;
(*left)-> info=info;
(*left)->prew=NULL;
}
cur=*left;
cin>>info;
while (info)
{
cur->next= new t2node;
cur->next->prew=cur;
cur=cur->next;
cur-> info=info;
cin>>info;
}
cur->next=NULL;
*right=cur;
}
void output1(p2node a) //функция вывода
{
p2node cur;
cur = a;
while (cur) {
cout <<" "<< cur->info;
cur = cur->prew;
}
return;
}
t2node* find_max( t2node* item) {
t2node* tmp1 = item;
for(; item != NULL; item = item->next){
if(item->info > tmp1->info)
tmp1 = item;
}
return tmp1;
}
t2node* find_min( t2node* item) {
t2node* tmp2 = item;
for(; item != NULL; item = item->next){
if(item->info < tmp2->info)
tmp2 = item;
}
return tmp2;
}
//pnode *find_max(pnode *item) {
//
// pnode* tmp = item;
// for(; (item) != NULL; (item) = (item)->next){
// if((item)->info > tmp->info)
// tmp = item;
// }
// return tmp;
//}
int main() {
p2node l,r;
p2node val1 = NULL;
p2node val2 = NULL;
formDouble(&l,&r);
val1=find_max(l);
cout<<(val1)->info<<endl;
val2=find_min(l);
cout<<(val2)->info;
cout<<" ";
return 0;
}
void output2(p2node min, p2node max) //функция вывода
{
p2node cur1=min;
p2node cur2=max;
while (cur1 && cur2) {
cout <<" "<< cur1->info;
cur1 = cur1->next;
}
return;
}
Вроде есть, принимаю критику))
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Пишу функции ввода/ вывода бинарного дерева различными методами Но после ввода элементов(пока не 0) ничего не происходит, помогите разобраться,...
Когда нажимаю на кнопку несколько раз, выполняет за 1 секунду по несколько разВ чем проблема?
Нужен инструмент, способный создавать сайт по методологии БЭМ, а для этого нужно как-то объединять отдельные независимые блоки html кода, к которому...