Vapros za programistite na C
4 отговора
278 прегледа
Vapros za programistite na C
Nqkoy znae li metod za sortirane na chisla narechen "metod na pryakata sortirovka".Ako prilozite i malak primer ste vi bada mnogo blagodaren.
Re: Vapros za programistite na C
Predpolagam tova e pyrviyat metod, koyto nyakoga si izpolzval, i nay-veroyatno nikoy ne ti go e obyasnyaval :-)))
Ideyata e slednata: obhojdash masiva, namirash nay-malkiya element, i go razmenyash s pyrviya. Prilagash rekursivno za ostatyka ot masiva.
I vsyshtnost, naricha se pryaka selekciya.
Ideyata e slednata: obhojdash masiva, namirash nay-malkiya element, i go razmenyash s pyrviya. Prilagash rekursivno za ostatyka ot masiva.
I vsyshtnost, naricha se pryaka selekciya.
Редактирано от Potencialen emigrant на
Re: Vapros za programistite na C
Mozes li da prilozis kratak primer.
Blagodarya ti predvaritelno.
Blagodarya ti predvaritelno.
Re: Vapros za programistite na C
eto edin kratyk primer za 3 chisla
int m[3] = { 4, 2, 1 };
int main()
{
if ( m[0] > m[1] )
if ( m[1] > m[2] )
swap(0,2);
else
swap(0,1);
else
if ( m[0] > m[2] )
swap(0,2);
else
;
if ( m[1] > m[2] )
swap(1,2);
else
;
}
int m[3] = { 4, 2, 1 };
int main()
{
if ( m[0] > m[1] )
if ( m[1] > m[2] )
swap(0,2);
else
swap(0,1);
else
if ( m[0] > m[2] )
swap(0,2);
else
;
if ( m[1] > m[2] )
swap(1,2);
else
;
}
Re: Vapros za programistite na C
в псевдокод
фунцията find_min() намира индекса на най-малкия елемент в зададения интервал.
swap - разменя елементите с указаните индекси.
уместно е когато операцията сравнение е "евтина", а операцията размяна "скъпа".
на това нещо Microsoft му казваха "Exchange Sort" (поне така беше в примерчето във VC 1.0)
фунцията find_min() намира индекса на най-малкия елемент в зададения интервал.
swap - разменя елементите с указаните индекси.
for i = 1 to n
min_index = find_min( i, n )
swap( i, min_index )
уместно е когато операцията сравнение е "евтина", а операцията размяна "скъпа".
на това нещо Microsoft му казваха "Exchange Sort" (поне така беше в примерчето във VC 1.0)