Բովանդակություն:
2025 Հեղինակ: Lynn Donovan | [email protected]. Վերջին փոփոխված: 2025-01-22 17:27
Ժամանակի բարդություն ալգորիթմի քանակը քանակականացնում է ժամանակ վերցված է ալգորիթմի կողմից՝ գործելու որպես մուտքի երկարության ֆունկցիա: Նմանապես, Տիեզերք բարդություն ալգորիթմի քանակությունը չափում է տարածության կամ հիշողության քանակությունը, որը վերցնում է ալգորիթմը գործարկելու համար՝ որպես մուտքի երկարության ֆունկցիա:
Նաև պետք է իմանալ, թե ինչ է նշանակում ժամանակի բարդություն:
Համակարգչային գիտության մեջ ժամանակի բարդությունը հաշվողական բարդությունն է որը նկարագրում է գումարը ժամանակ անհրաժեշտ է ալգորիթմ գործարկել: Այսպիսով, գումարը ժամանակ վերցված և ալգորիթմի կողմից կատարված տարրական գործողությունների քանակը են ընդունված է տարբերվել առավելագույնը հաստատուն գործոնով:
Բացի այդ, ինչպե՞ս է հաշվարկվում ժամանակի բարդությունը: Այսպիսով, մենք կարող ենք բազմապատկել կամ բաժանել հաստատուն գործակցով, որպեսզի հասնենք ամենապարզ արտահայտությանը: Այսպիսով, 2N-ը դառնում է պարզապես N: Հաշվարկների ամենատարածված չափանիշը ժամանակի բարդություն Մեծ O նշում է: Սա հեռացնում է բոլոր մշտական գործոնները, որպեսզի վազքը ժամանակ կարելի է գնահատել N-ի նկատմամբ, քանի որ N-ը մոտենում է անսահմանությանը:
Նաև գիտեք, որո՞նք են ժամանակի բարդության տարբեր տեսակները:
Կան ժամանակային բարդությունների տարբեր տեսակներ, ուստի եկեք ստուգենք ամենահիմնականները:
- Մշտական ժամանակի բարդություն՝ O(1)
- Գծային ժամանակային բարդություն՝ O(n)
- Լոգարիթմական ժամանակի բարդություն. O (log n)
- Քառակուսի ժամանակային բարդություն՝ O(n²)
- Էքսպոնենցիալ ժամանակի բարդություն՝ O(2^n)
Ո՞րն է ալգորիթմի ժամանակային բարդությունը, բացատրեք օրինակով:
Հասկանալով նշումները Ժամանակի բարդություն հետ Օրինակ Այն ցույց է տալիս առավելագույնը, որը պահանջվում է ա ալգորիթմ բոլոր մուտքային արժեքների համար: Այն ներկայացնում է ամենավատ դեպքը ալգորիթմի ժամանակի բարդությունը . Օմեգա (արտահայտություն) գործառույթների մի շարք է, որոնք աճում են ավելի արագ կամ նույն արագությամբ, ինչ արտահայտությունը:
Խորհուրդ ենք տալիս:
Ի՞նչ է գծային և ոչ գծային տվյալների կառուցվածքում:
1. Տվյալների գծային կառուցվածքում տվյալների տարրերը դասավորված են գծային կարգով, որտեղ յուրաքանչյուր տարր կցվում է իր նախորդ և հաջորդ հարակիցներին: Տվյալների ոչ գծային կառուցվածքում տվյալների տարրերը կցվում են հիերարխիկ ձևով: Տվյալների գծային կառուցվածքում տվյալների տարրերը կարող են անցնել միայն մեկ գործարկման ընթացքում
Ի՞նչ է կրկնակի կապված ցուցակը տվյալների կառուցվածքում օրինակով:
Կրկնակի կապված ցուցակը կապակցված ցուցակի տեսակ է, որտեղ յուրաքանչյուր հանգույց, բացի իր տվյալները պահելուց, ունի երկու հղում: Առաջին հղումը ցույց է տալիս ցուցակի նախորդ հանգույցը, իսկ երկրորդ հղումը ցույց է տալիս ցուցակի հաջորդ հանգույցը
Ո՞րն է ժամանակի բարդությունը կապված ցանկում տարրերի քանակը հաշվելու համար:
Ո՞րն է ժամանակի բարդությունը կապված ցանկում տարրերի քանակը հաշվելու համար: Բացատրություն. Տարրերի քանակը հաշվելու համար դուք պետք է անցնեք ամբողջ ցանկը, հետևաբար բարդությունը O(n) է:
Ո՞րն է ժամանակի բարդությունը ստեկի մղման գործողության մեջ:
Stack-ի բոլոր ստանդարտ գործողությունների համար (push, pop, isEmpty, size), ամենավատ դեպքում գործարկման ժամանակի բարդությունը կարող է լինել O(1): Մենք ասում ենք, որ կարող է, և ոչ, քանի որ միշտ հնարավոր է իրականացնել կույտեր՝ հիմքում ընկած ներկայացվածությամբ, որն անարդյունավետ է
Ի՞նչ է տվյալների գծային կառուցվածքը տվյալների կառուցվածքում:
Տվյալների գծային կառուցվածք. Տվյալների կառուցվածքը, որտեղ տվյալների տարրերը դասավորված են հաջորդաբար կամ գծային, որտեղ տարրերը կցվում են դրա նախորդ և հաջորդ հարևաններին, ինչը կոչվում է գծային տվյալների կառուցվածք: Գծային տվյալների կառուցվածքում ներգրավված է մեկ մակարդակ: Հետևաբար, մենք կարող ենք անցնել բոլոր տարրերը միայն մեկ վազքով