Ինչպես իրականացնել որոնումը

Բովանդակություն:

Ինչպես իրականացնել որոնումը
Ինչպես իրականացնել որոնումը
Anonim

Բազմաթիվ խնդիրների լուծման ալգորիթմներ մշակելիս խնդիրը հաճախ առաջանում է տվյալների որոշակի խմբի որոնումը իրականացնելիս ՝ ըստ սահմանված չափանիշների: Պատվերով կամ չպատվիրված հաջորդականությունն ուսումնասիրելիս որոնումը կարող է իրականացվել ՝ օգտագործելով տարբեր մեթոդներ: Ընդհանուր դեպքում, որոնման խնդիրը լուծելու համար, դիտարկվում է տվյալների որոշակի զանգված, որում պահանջվում է գտնել տվյալ տարրը:

Ինչպես իրականացնել որոնումը
Ինչպես իրականացնել որոնումը

Հրահանգներ

Քայլ 1

Տվյալների զանգվածում հայտնի տարր գտնելու ամենադյուրին ճանապարհը դրա արժեքների կրկնությունն է: Այս ալգորիթմը օպտիմալ է փոքր քանակությամբ տեղեկատվության համար: Դրա էությունը կայանում է հայտնի տվյալների հաջորդականությունը (զանգված) կտրելու և յուրաքանչյուր տարրը ցանկալի արժեքի հետ համեմատելու մեջ: Եթե համապատասխանություն է հայտնաբերվել, կախված նշված չափանիշներից, որոնումը կարող է ավարտվել կամ շարունակվել զանգվածի վերջում:

Քայլ 2

Այնուամենայնիվ, չնայած այս մեթոդի կիրառման պարզությանը, դրա օգտագործումը անցանկալի է մեծ քանակությամբ տեղեկատվություն պարունակող զանգվածներում, քանի որ դա էապես մեծացնում է ալգորիթմի ռեսուրսների ինտենսիվությունը: Այս դեպքում որոնումն օպտիմալացնելու համար ավելի լավ է զանգվածում նախանշել արժեքները և իրականացնել որոնման ալգորիթմները. Երկուական ծառի, Ֆիբոնաչիի ծառի, էքստրապոլյացիայի մեթոդի միջոցով:

Քայլ 3

Պատվիրված զանգվածի հետ աշխատելիս օգտագործեք ավելի արդյունավետ ալգորիթմ ՝ երկուական որոնման մեթոդը: Դրա էությունը կայանում է նրանում, որ միջակայքի սահմանները թվարկելու գործընթացում միմյանց են մոտենում ՝ այդպիսով նեղացնելով որոնման տարածքը: Համեմատեք ձեր փնտրած արժեքը զանգվածի համարակալված տարրի հետ: Եթե նմուշը համապատասխանում է տարրին, ապա խնդիրը համարվում է լուծված: Եթե ցանկալի իրը ավելի մեծ է, քան միջին տարրը, ապա հետագա որոնումը պետք է իրականացվի զանգվածի մասում, որը գտնվում է միջին տարրի աջ կողմում (զանգվածի սկզբից մինչև միջին տարր -1): Եթե որոնումը պակաս է միջին տարրից, ապա որոնումը շարունակվում է զանգվածի մասում `մեջտեղից մինչև վերջին տարր: Որոշելով որոնման նոր տարածք, նկարագրված ալգորիթմը կրկնվում է ՝ նույնականացնելով համընկնումները կամ նեղացնելով մշակման տարածքը: Այս սխեման ճիշտ է իջնող զանգվածի համար:

Քայլ 4

Տրված հաջորդականության մեջ նվազագույն կամ առավելագույն տարր գտնելու առանձնահատուկ խնդիրներ լուծվում են նախնական տարրը որպես ցանկալի նշանակելով: Հաջորդը, կատարվում է զանգվածի մնացած արժեքների հաջորդական թվարկում `երկրորդը` առաջինով, երրորդը `առաջինով և այլն: Որպես ստանդարտ վերցված արժեքը համեմատելիս պարզ է դառնում, արդյոք զանգվածում կա տարր, որն ավելի՞ է համապատասխանում տվյալ պայմանին (նվազագույն կամ առավելագույն): Երբ մեկը գտնվի, այն արդեն ընդունվում է որպես ստանդարտ, և թվարկումը շարունակվում է ընթացիկ դիրքից մինչ զանգվածի վերջը: Արդյունքում, այս խմբի նվազագույն (կամ առավելագույն) արժեքը այն տարրն է, որը վերջին անգամ ճանաչվել է որպես ստանդարտ:

Խորհուրդ ենք տալիս: