Спец часть (часть 3) (3 поток) (2015) (by Кибитова) (1161603), страница 2
Текст из файла (страница 2)
Из основныхстью.Поэтому можносчитать,что SI (n),константаTD (n) ограниченыарифметическихоперацийумножениеиSделениеявляются наиболееНесколько позднее мы будем говорить о битовой сложности, коми. В примеренам требуетсяарифметическихдополнительнаяалгоритмовматрица, вчастокоторойдорогими,и при.рассмотренииторая позволяет принимать в расчет различие в размерах2 операндовбудетформироватьсярезультат; сложностиимееммультипликативнойSMMнепохожие(n) = n . операции,интересуютсяименно(алгебраической)сложнои рассматриватьпри нахожденииВо всех ихэтихпримерахкак уровне.легко заметить, принимаем востью.сопоставляязатратностьна мы,битовомНесколькопозднеемыбудем иговоритьо битовойковниманиечастьзатратввспомнитьсоответствиис сложности,этимопределяемФормулылишь(.)вновьзаставляюто важностипонятиятораяпозволяетв расчетразличиеразмерахоперандовсложностьалгоритма.В примере.учитывалисьтолькоумноженияразмеравхода.Вприниматьсилу разныхпричинневсегдав этотразмерлегкоикакрассматриватьпринахождениисложностинепохожиеоперации,более дорогиепо затратности)операции.и естественноможет(доминирующиебыть введен так, чтосложность алгоритмавоз- В присопоставляяихзатратностьнабитовомуровне.растаетразмеравхода.Но, по крайнеймере, функмере.примыувеличениирассматриваемлибосравнения,либо обмены.И во всехФормулы(.)вновьзаставляютвспомнитьоважностипонятияция∥·∥должнаобеспечиватьопределенностьзначенийT(n),SAA (n)примерах мы игнорировали затраты по выполнениюуправляющихразмераВ силуразныхпричинне всегдаэтот размерлегкодля всех входа.достаточнобольшихn—иначебылобы простейшегоневозможноговооператоров,хотя,скажем,привыполненииоператораритьо поведенииTA (n),S A (n)при так,n → ∞.ициклаестественноможетбытьвведенчто сложность алгоритма воз Заведомонеудачный размервхода— это,числомере,строкфункnрастаетпри увеличенииразмеравхода.Но, скажем,по крайнейданнойматрицы,речьоб алгоритмахвычисленияi = 1 обеспечиватьtoеслиn do...
идетodция∥ · ∥forдолжнаопределенностьзначенийTA (n),проS A (n)изведениявсехэлементовиеслиматрицанеобязательноявляетсядлявсех достаточноn —параметраиначе былоцикла,бы невозможнотратитсявремяна большихизменениепроверкуговоусловияквадратной:при выбранномтакимритьо поведенииTA (n), S A (n)приобразомn → ∞. размере входа мы имеемпродолженияциклаи т.Tд.(n) = ∞ для сложности по числу умножетождественноеравенствоAЗаведомо неудачныйразмервхода — это, скажем, число строк nОбычновтакоготакихалгоритмаситуацияхA,считается,мы учитываемосновнуюнийлюбоготакобкакалгоритмахпричтофиксированномчиследанной матрицы, если речь идетвычисленияпрочастьзатратдля худшегослучая.Если могутпытатьсяточноподсчитыватьстрокчислостолбцовичислоэлементовбытьскольугодноизведения всех элементов и если матрица не обязательно являетсябольшими.строк число столбцовчисло элементовмогут подразумеваетсябыть сколь угодномодельвычислений;всюду дои главы без оговорокВ некоторых случаях алгоритму сопоставляют несколько сложбольшими.РАМ.ностей.временныезатратысортировкимассивас помоДругиеИтоговыевозможныеосложнения,вызванныенеудачнымвыборомщью сравненийскладываютсязатрат на сравнение и на перевхода, будутобсуждаться виз§ .§размера.Асимптотическиеоценки(формализм)мещениеэлементов.Безчтоучетаэлементовмассиванельзя скаДостаточноочевидно,если типаалгоритмA состоитв последовазать, какаяоперацийявляется алгоритмовболее дорогой.для алтельном(другизза другом)выполненииU и V , Поэтомуто мы, вообДляхарактеристикиростасложностипочислусравненийсортировгоритмовиспользуютсясложности:с однойсторощеговоря, сортировкине можем утверждать,что TдвеTU (n) + TV (n),так как,A (n) =кипростымивставкамипервогоивтороготипамыможемнапример,размерсравнений,входа алгоритмаU можетсущественноотличаться,испольны — по числуа с другой— почислу перемещенийэлезоватьизвестныйизматематическогоанализасимволOинаписатькакв большую,так и в меньшуюот размеравыхода.ментов,т.
е. присваиваний(:=) сторону,или обменов(↔). егоЕслиже рассмат2ПустьAиB—некоторыеалгоритмы.Какможнозаметить,из вы- егоT(n)=O(n)(здесьидалееn→∞).Мыможемтакжевыделитьглавривается некоторый арифметический алгоритм, то, исследовавTполнениядля всехn неравенстваTAможно(n) < TB (n)не следует, чтоC A (x) <ныепо ростуслагаемыев (.):мультипликативнуюсложность,дополнительноинтересовать§<.T Асимптотические оценки (формализм)для всехвозможныхаддитивнойвходов x (достаточновспомниться,C Bв(x)качествеуточнения,сложностью(числомсортисложений122!Iи(n)ровку слияниямиTпузырьковуюсортировку;выполняется (.)= nслучае)+ O(n),T!д.=последняяn + O(n),I2 (n)1и вычитаний вдляхудшеми т.большихВ приложениитщатель2значенийDn мыопределенныхвсехдостаточно(ввиде).нашемслубыстрее первой, коль скоро массив задан уже в упорядоченномноисследуеммультипликативнуюиаддитивнуюсложностиалгоритхотяв этоми нетощутимогопрактическогосложностьюсмыслапростотычаеэтизначенияцелые).Несимметричностьзаписив силуf (n)=Θ(g(n))Аналогичноделообстоитс пространственнымиизатра!!моввычислениязначенияполиномапризаданномзначенииаргуфункцийT(n),T(n).Втожевремя,какэтохорошоизвестно,асимпвтами.сравненииf (n) ≍ g(n) ( f (n) и g(n) как бы не равноправI1 с записьюI2мента.§ .
вАсимптотические(формализм) оцетотическаяформулаf хотя(n) = имеемO(g(n))являетсяудобным средствомныпервойзаписи,оценкиделос отношениемэквивалентноПустьнекоторомуалгоритмуAсопоставленыдве,скажем,временниваниянетривиальноустроеннойфункцииf (n) с′′ помощьюсти) объясняетсячтоэтузаписьиспользуют,когдаболееg(n)′тем,′′ обычно′определенныхдляTвсехдостаточнобольшихзначенийn(внашемслу-бытьныесложности(n)иT(n).Например,T(n)иT(n)могутAAAAпростойфункцииg(n); столь же полезными оказываются и оценкипроще,f (n).целые).чаеэти чемзначенияНесимметричностьf (n)первого= Θ(g(n))сложностямипоразнымоперациям.Если записиоперациии втовидаf (n)для= o(g(n)).Но когдамычислуговорим,что сортировкавыбором,Итак,сложностиT(n)посравненийдлялюбогоуповрогосравнениис записью f (n) ≍ g(n)( f (n) и g(n)как бы незатратность,равноправ-из товидапредполагаютсяимеющимиодинаковую2пузырьковаясортировкаи сортировкапростымимянутыхалгоритмовсортировкимыс отношениемимеемT(n) эквивалентно=вставкамиΘ!(n ).
Этоимеютболееныпервойхотяимеемделоэтов ещене записи,дает основанийсчитать,что сложностьTA (n), 2 которую2квадратичныесложности,мыимеемввидунетолькото,чтосоответсильноеутверждение,чемT(n)совместно=O(n), таккак T (n)=когдаO(nвидов,) являетсясти)объясняетсятем, чтообычноэтузаписьиспользуют,g(n)мы определим,рассматриваяоперацииобоихбу2ствующиесложностидопускаютоценкуO(n),ночтоэтисложностипроще,чемfлишьасимптотическойверхнейоценкой:всоответствиисизвестным′(n).′′дет равна TA (n) + TA (n), потому 2что максимумы этих двух видов заявляютсявеличинамипорядкаn ; в сравненийматематическоманализеэто иноИтак,длясложностианализаT(n) по определениемчислудля любогоиз упоизматематическоготратмогут достигатьсяна разныхвходах одного и 2того же размера.2мянутыхалгоритмовсортировкиT(n)= Θ(n ). Это болеегдазаписываетсякакT(n) ≍ n ,мыгдеимеемT(n) —рассматриваемаяфункция,Можно только утверждать, что22g(n) |,f(n)=O(g(n))⇐⇒∃∀|f(n)|!c|сильноеутверждение,чемT(n)=O(n),таккакT(n)=O(n)являетсяв данном случае — сложность.
В c,Nпоследние>0n> N годы в теории сложности′′′!T(n)!T(n)+T(n). f (n) = сΘизвестнымлишьасимптотическойверхнейоценкой:всоответствииA g(n) сталиалгоритмов вместо2 f (n) ≍писать(g(n)).AA например,n = O(n анализа), но неверно,что n = Θ(n2 ). Здесь и далее, пользуиз математическогоопределениемПример .. Чтобыпроиллюстрироватьуказанноеобстоятельство,f (n) и g(n)имеют одинаковыйпорядокясь§Определениекванторами∃.., ∀, Функциимыоценкизаписываемсвязываемыеими переменные,.Асимптотические(формализм)мы вновь fобратимсяксортировкепростымивставками,котораямо(n)=⇐⇒ ∃c,N| f (n) | !когдаc| g(n)|,0 ∀n> N множества(пишутf (n)ΘO(g(n))(g(n))) определяющиетогдаи >толькотогда,найдутсяположиравно каки=условия,значенийэтихпежет рассматриваться в двух вариантах I1 и I2 : для вставки элементательныеc1n, =,видеN длячтонеравенства2такие,ременных,вc2O(nвыраженийкванторах.Это частовсехдостаточнозначенийn (впользунашемслунапример,), индексныхноневерно,чтоn больших= Θ(n2 ).
приЗдесьи далее,xi+определенных1 в уже упорядоченную часть x1 , x2 , ..., x i элементы этой упорядочаеэтизначенияцелые).Несимметричностьf (n) = Θ(g(n))позволяетобходитьсядополнительныхскобокипеременные,облегчаетчтениеяськванторами∃, ∀, мызаписываемсвязываемыеимиcбез| f (n)c2 | g(n)|xзаписи(.)ченнойчастипросматриваютсяв| !порядке1 | g(n) | ! либоi , x i −1 , ..., либо в пов сравнениис записьюf (n) ≍ g(n) множества( f (n) и g(n)как бы неравноправформул.равнокакиусловия,определяющиезначенийэтихперядке x1 , x2 , ...
В первом варианте максимум числа сравнений довыполненыдлявсехn >хотяN. выраженийныв первойимеемделоприс отношениемэквивалентноИногдабываютполезныминижниеасимптотическиеоценки.ременных,втогда,видезаписи,индексныхкванторах.частостигаетсякогдавходноймассив имеетобратнуюЭток требуемой сти)объясняетсятем,чтообычноэтузаписьиспользуют,когда g(n)позволяетобходитьсябездополнительныхскобокиоблегчаетчтениеупорядоченность:x1 >Соотношениеx2 > что...
> отношениеxn , иf (n)на =этомже входедостигаетсяБезтруда проверяется,«иметьодинаковыйпоряОпределение..проще,чем f (n).формул.′ Ω(g(n))′′ имеет место тогда!максимумчислаобменов; имеемTI1 (n) = TI1 (n)на+ Tмножестве(n) = n(n −функций,1), гдедок»являетсяотношениемэквивалентностии ′толькотогда,когда найдутсяN любоготакие, изчтоуподляИтак,для сложностиT(n) по положительныечислу сравненийI1c,дляИногда′′ бывают полезными нижние асимптотические оценки.T(n),T(n)сутьсложностипочислусравненийиобменов.2I1мянутыхалгоритмов |сортировкимы|.
имеем T(n) = Θ(n ). Это болеевсехn >I1N выполненоf (n) | " c| g(n)Определение..Соотношениеf(n)(g(n))место2 ΩВовторомвариантемаксимумчисладостигается,когда сильное утверждение, чем T(n) = O(n=),сравненийтак какимеетT (n)=O(n2тогда) являетсяимассивтолькотогда,когданайдутсяположительныеc,Nтакие,чтодляСледующеепредложениевыводитсяиз вопределенийO, Ωужеупорядочентак,кактребуется:xсоответствииxсn известным, а макси1 < x2 < ... <символовлишьасимптотическойверхнейоценкой:всехn>Nвыполнено|f(n)|"c|g(n)|.имумΘобменов — когдаx1 >определениемx2 > ... > xn . Если i > 1, то при вставкеиз. числаматематическогоанализаэлементаxi+1 предложениев уже упорядоченнуюx1 , x2 , ..., xсимволовтемi потребуетсяСледующеевыводитсячастьизопределенийO, Ω тогдаПредложение..Соотношениеf(n)=Θ(g(n))имеетместоf(n)=O(g(n))⇐⇒∃∀|f(n)|!c|g(n)|,c,N >0n> N сравнений.