Парақ кодының минималды абсолютті айырмашылығы

Leetcode Solution-тің минималды абсолютті айырымының шешімі бізге кейбір бүтін сандардан тұратын сұрыпталмаған массив немесе вектор ұсынады. Бізден айырмашылық минималды абсолюттік айырмашылыққа тең болатын барлық жұптарды табу керек. Минималды абсолюттік айырмашылық - бұл абсолюттік айырманың минималды мәні ...

Ары қарай оқу

Permutations Leetcode шешімі

Permutations Leetcode Solution есебі бүтін сандардың қарапайым дәйектілігін қамтамасыз етеді және берілген реттік барлық векторлардың толық векторын немесе массивін қайтаруды сұрайды. Мәселен, мәселені шешуге кіріспес бұрын. Біз ауыстырулармен таныс болуымыз керек. Сонымен, ауыстыру тек келісуден басқа ештеңе емес ...

Ары қарай оқу

Табалдырық парағының шешімі берілген ең кіші бөлгішті табыңыз

Бұл хабарлама табалдырық берілген ең кіші бөлгішті табуға арналған Leetcode шешімінің есебі. «Шекті берілген ең кіші бөлгішті табу» есебінде бізге сандар жиымы және шекті мән берілген. «Нәтиже» айнымалысы барлық элементтердің қосындысы ретінде анықталған кезде…

Ары қарай оқу

Қайталанатын таңбаларсыз ең ұзын жол

Жолды ескере отырып, біз символдарды қайталамай, ең ұзын жолдың ұзындығын табуымыз керек. Бірнеше мысалға назар аударайық: мысал pwwkew 3 Түсіндіру: жауап «wke» ұзындығы 3 aav 2 Түсіндірме: жауап «av», ұзындығы 2, ұзындығы 1-тәсіл «XNUMX», қайталанбас кейіпкерлердің таңбалары жоқ.

Ары қарай оқу

GetMin () O (1) уақыт ішінде және O (1) қосымша кеңістікті қолдайтын стек жасаңыз

GetMin () O (1) уақыт ішінде және O (1) қосымша кеңістікті қолдайтын стек жасаңыз. Осылайша, стек деректерінің арнайы құрылымы стектің барлық әрекеттерін қолдауы керек - void push () int pop () bool isFull () bool isEmpty () тұрақты уақытта. Минималды мәнді қайтару үшін getMin () қосымша операциясын қосыңыз ...

Ары қарай оқу

Екі санның GCD

Ең жақсы жалпы фактор дегеніміз не? Екі санның GCD - бұл екеуін бөлетін ең үлкен сан. Тәсіл-1 Brute Force Екі санның барлық жай көбейткіштерін табу, содан кейін қиылыстың көбейтіндісін табу. Екі санды бөлетін ең үлкен санды табу. Бұл не ...

Ары қарай оқу

Массивті айналдыру

Массивті айналдыру - бұл N өлшемді жиым берген мәселе, біз массивті дұрыс бағытта айналдыруымыз керек. Әрбір элемент массивтің оң және соңғы элементтерінің бір позицияға жылжуы бірінші позицияға келеді. Сонымен, біз K мәнін бердік ...

Ары қарай оқу

Жылдам сұрыптау

Жылдам сұрыптау - сұрыптау алгоритмі. Массивтің сұрыпталмаған алгоритмі арқылы сұрыпталған. Мысал енгізу: {8, 9, 5, 2, 3, 1, 4} Шығарылым: {1, 2, 3, 4, 5, 8, 9} Теория Бұл бөлу және жеңу сұрыптау алгоритмі. Ол массивтен бұрылыс элементін таңдайды, бөлінеді ...

Ары қарай оқу

Байланыстырылған тізімді кері қайтару

Мәселе туралы мәлімдеме «байланыстырылған тізімнің кері бағыты» проблемасында бізге байланыстырылған тізімнің бастығы берілгені айтылады. Біз байланыстырылған тізімді олардың арасындағы байланыстарды өзгерту арқылы кері қайтарып, кері байланыстырылған тізімнің басын қайтаруымыз керек. Мысал 10-> 20-> 30-> 40-> NULL NULL <-10 <-20 <-30 <-40 Түсіндіру Біз байланыстырылғанды ​​өзгерттік ...

Ары қарай оқу

Үймеде сұрыптау

Үйінді сұрыптау - бұл екілік үймелі деректер құрылымына негізделген салыстыруға негізделген сұрыптау әдісі. HeapSort таңдау элементіне ұқсас, онда біз максималды элементті табамыз, содан соң сол элементті соңына орналастырамыз. Біз осы процесті қалған элементтер үшін қайталаймыз. Сұрыпталмаған берілген ...

Ары қарай оқу