Macaulay2 Engine
Loading...
Searching...
No Matches

◆ sort_list()

void s_pair_heap::sort_list ( s_pair *& p) const

Definition at line 156 of file spair.cpp.

157{
158 if (p == nullptr || p->next == nullptr) return;
159 s_pair *p1 = nullptr;
160 s_pair *p2 = nullptr;
161 while (p != nullptr)
162 {
163 s_pair *tmp = p;
164 p = p->next;
165 tmp->next = p1;
166 p1 = tmp;
167
168 if (p == nullptr) break;
169 tmp = p;
170 p = p->next;
171 tmp->next = p2;
172 p2 = tmp;
173 }
174
175 sort_list(p1);
176 sort_list(p2);
177 p = merge(p1, p2);
178}
void sort_list(s_pair *&p) const
Definition spair.cpp:156
s_pair * merge(s_pair *f, s_pair *g) const
Definition spair.cpp:123
int p
int p1
s_pair * next
Definition spair.hpp:90

References merge(), s_pair::next, p, p1, and sort_list().

Referenced by sort_list().