Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Oleg Khovayko [SPAM trap - don't re  2:5020/400     07 Aug 2003  01:55:58
 To : Nick Ignatov
 Subject : Re: n*log(n)
 -------------------------------------------------------------------------------- 
 
 Nick Ignatov wrote:
 
 > утвеpждения. Подскажите, плиз, как это можно обосновать. В кpайнем случае
 > ткните в ссылку в инете.
 
 Обосновывается так:
 
 Допустим, у нас есть неупорядоченый (даже частично)
 массив (или иная структура из N) элементов.
 Их надо отсортировать, то есть произвести перестановку.
 Эту перестановку можно рассматривать как операцию типа:
 
   - для каждого элемента входного массива
   -- поместить его в правильную позицию выходного массива.
 
 Hомер этой правильной позиции совершенно неизвестен заранее.
 Этот номер можно рассматривать как X-битовое
 двоичное число, где X - двоичный логарифм от N.
 Если у нас есть только операция сравнения больше/меньше,
 что бы с чем не сравнивать - все равно одно сравнение
 даст максимум один бит информации.
 Чтобы однозначно определить выходную позицию конкретного
 элемента, нужно заполнить X битов его новой позиции,
 то есть провесть X сравнений.
 То есть для одного элемента надо провести Log2(N) сравнений.
 
 Всего таких элементов у нас N.
 
 Вот и получается N*Log2(N).
 
 -- 
 #include <best/regards>
 Oleg Khovayko  http://olegh.spedia.net
 PS/ATTN: Reply to reverted address net.comcast@olegh
 
 --- ifmail v.2.15dev5
  * Origin: http://www.ftc.gov/opa/2001/04/spam.htm (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: n*log(n)   Oleg Khovayko [SPAM trap - don\'t re   07 Aug 2003 01:55:58 
Архивное /ru.algorithms/54880557d49f.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional