Tegishli nashrlar 'data-structure-algorithm'


Java-da massivlarni yaratish va ishga tushirish: boshlanuvchilar uchun qo'llanma
I. Kirish A. Massiv nima ekanligini tushuntirish Massiv - bu bir xil turdagi elementlarning belgilangan o'lchamdagi to'plamini saqlaydigan ma'lumotlar strukturasi. U ko'pincha raqamlar, satrlar yoki hatto boshqa ob'ektlar ro'yxati kabi tegishli qiymatlar yoki ob'ektlar guruhini saqlash uchun dasturlashda qo'llaniladi. Java-da massiv - bu bitta turdagi ma'lum miqdordagi qiymatlarni saqlaydigan ob'ekt. Qiymatlar har qanday turdagi bo'lishi mumkin, shu jumladan ibtidoiy turlar va..

Ikkilik qidiruv daraxti ma'lumotlar tuzilmalari (ft. Amalga oshirish, taqqoslash va vaqt murakkabligi)
Kunning tasdiqlanishi: O'zingizga mehribon bo'lishni unutmang 🌟 Ikkilik qidiruv daraxti - bu quyidagi xususiyatlarga ega bo'lgan ma'lumotlar tuzilmasi: A. Har bir daraxt tugunida ko‘pi bilan ikkita bola bor B. O'ng pastki daraxtdagi barcha tugunlar ildizdan kattaroqdir C. Chap pastki daraxtdagi barcha tugunlar ildizdan kamroq Eslatma: Ildiz daraxtning birinchi tugunidir Ikkilik qidiruv daraxtining eng yaxshi stsenariysi 0 (log n) dir. Buning sababi, search() ni topish yoki..

Pufakcha saralash
Pufakchali tartiblash massiv orqali qayta-qayta o‘tadigan va agar ular tartibsiz bo‘lsa, qo‘shni elementlarni almashtiradigan tartiblash algoritmidir. Algoritm ro'yxat tartiblashtirilguncha takrorlanadi. Misol Berilgan massivni tartiblang {3, 2, 5, 1, 4}. Boshlash uchun biz 3 va 2 ni solishtiramiz. 3 2 dan kichik, shuning uchun ular almashtiriladi. Endi 3 ni 5 ga solishtiring. 3 5 dan kichik, shuning uchun ular almashtirilmaydi. Keyin 5 ni 1 ga..

Javascriptda kamaytirish usulining eng yaxshi 5 ta ishlatilishi
1. Raqamlarni jamlash ga const numbers = [1, 2, 3, 4, 5]; const sum = numbers.reduce((currentSum, currentNum) => currentSum + currentNum); /* output sum = 15 * / 2. Massivni kichraytirish orqali obyektni olish const fruits = ['apple', 'banana', 'orange', 'banana', 'apple']; const fruitsMap = fruits.reduce((accumulator, fruit) => { if(accumulator[fruit]) { accumulator[fruit]++; } else { accumulator[fruit] = 1; } return accumulator; },..

Floydning toshbaqa va quyon algoritmi TS bilan
Tanlov tavsifi Bog'langan ro'yxatning boshi head berilgan bo'lsa, bog'langan ro'yxatda tsikl bor yoki yo'qligini aniqlang. Agar ro'yxatda next ko'rsatgichni doimiy ravishda kuzatib borish orqali qayta erishish mumkin bo'lgan ba'zi tugun bo'lsa, bog'langan ro'yxatda tsikl mavjud. Ichkarida pos dumning next koʻrsatkichi ulangan tugun indeksini koʻrsatish uchun ishlatiladi. E'tibor bering, pos parametr sifatida o'tkazilmaydi . Bog'langan ro'yxatda tsikl mavjud bo'lsa..

JavaScript qanday qilib ma'lumotlar tuzilmalari va algoritmlari bilan birlashtirilgan?
Dunyo Internet atrofida aylanadi. Veb-saytlar Internetda ba'zi tegishli ma'lumotlarni ko'rsatish uchun kontentni talab qiladi. Bularni loyihalash uchun Javascript (JS) dan foydalaniladi. JavaScript veb-sahifalarni yanada interaktiv va qiziqarli tarzda loyihalash uchun ishlatiladi. JavaScript-ni ma'lumotlar tuzilmalari va algoritmlari ga ham kiritish mumkin. Ma'lumotlar tuzilmalari va algoritmlari nima? Endi biz ma'lumotlar tuzilmalari va algoritmlari (DSA) ta'rifini ko'rib..

Sanoq va ayt 🤷‍♂️ Matn yozish algoritmi
Tanlov tavsifi hisoblash va ayt ketma-ketligi rekursiv formula bilan aniqlangan raqamlar qatorlari ketma-ketligidir: countAndSay(1) = "1" countAndSay(n) - bu countAndSay(n-1) dan raqamlar qatorini "aytish" usuli, keyin u boshqa raqam qatoriga aylantiriladi. Raqamli qatorni qanday “aytish”ni aniqlash uchun uni pastki qatorlarning minimal soniga bo‘ling, shunda har bir pastki qator aynan bitta noyob raqamni o‘z ichiga oladi. Keyin har bir pastki qator uchun raqamlar..