Path: blob/devel/ElmerGUI/netgen/libsrc/general/sort.hpp
3206 views
#ifndef FILE_SORT1#define FILE_SORT23/**************************************************************************/4/* File: sort.hh */5/* Author: Joachim Schoeberl */6/* Date: 07. Jan. 00 */7/**************************************************************************/8910// order(i) is sorted index of element i11extern void Sort (const ARRAY<double> & values,12ARRAY<int> & order);1314extern void QickSort (const ARRAY<double> & values,15ARRAY<int> & order);1617181920template <class T>21inline void BubbleSort (int size, T * data)22{23T hv;24for (int i = 0; i < size; i++)25for (int j = i+1; j < size; j++)26if (data[i] > data[j])27{28hv = data[i];29data[i] = data[j];30data[j] = hv;31}32}3334template <class T>35inline void BubbleSort (ARRAY<T> & data)36{37if(data.Size() > 0)38BubbleSort (data.Size(), &data[data.Begin()]);39}4041#endif424344