มันจะมีปัญหาเชิงตรรกะทั้งหมดและแนวคิดที่เกี่ยวข้องใน Java
THIS REPO IS IN PROGRESS ... ?เก็บไว้? ️กับมัน ฉันจะเพิ่ม โครงสร้างข้อมูลและการใช้งานอัลกอริทึม พร้อมกับปัญหาที่เกี่ยวข้องกับหัวข้อ DSA ต่างๆ
ฉันทำงานทุกวัน!
Directory Structureไดเรกทอรีนี้มีวิธีแก้ปัญหาสำหรับการเขียนโค้ดที่มีชื่อเสียงส่วนใหญ่คำถามที่แบ่งออกเป็นหัวข้อจากการเพิ่มลำดับความยากและหัวข้อ หากคุณมีขอบเขตเวลาคุณสามารถเริ่มฝึกปัญหาจากส่วนนี้ได้โดยตรงหรือจากส่วนล่าง
หมายเหตุ: นี่คือ conent พรีเมี่ยม
- โปรแกรมพื้นฐานการพิมพ์รูปแบบ
- ชนิดข้อมูลใน Java
- ฟังก์ชั่น 1D อาร์เรย์
- อาร์เรย์ 2d
- สาย
- Recursion Basic
- รับการเรียกซ้ำ
- พิมพ์ซ้ำ
- ความซับซ้อนของเวลาและอวกาศ
- อ๊ะ
- คอลเลกชันใน Java
- กองซ้อน
- คิว
- การย้อนรอย
- LinkedList
- ต้นไม้
- อินเทอร์เฟซและทั่วไป
- Hashmaps
- กอง
- พยายาม
- การเขียนโปรแกรมแบบไดนามิก
- กราฟ
- ต้นไม้เซ็กเมนต์
- การกำบังบิต
- ต้นไม้ทั่วไป
- ต้นไม้ไบนารี
For absolute beginnerคุณสามารถเริ่มต้นจากส่วนนี้และทำตาม ส่วนนี้ยังครอบคลุม การวิเคราะห์ Big O เพื่อเริ่มต้น
หัวข้อไฮไลท์
การวิเคราะห์ความซับซ้อน, บันไดที่สำคัญ, อาร์เรย์ที่เรียงลำดับรวม, แทรกใน Arrray, เครื่องคิดเลขค่าจ้าง, อักขระ Unicode, การทำงานของสตริง, การจับคู่สตริง, การแยกสตริง, การจัดรูปแบบเอาต์พุต, อินพุตแป้นพิมพ์, ตัวอักษร, adder, การดำเนินการทางคณิตศาสตร์
Data Structure and Algorithm Trainingไดเรกทอรีนี้ครอบคลุมจากการเขียนโปรแกรมขั้นพื้นฐานไปสู่การเรียนรู้ DSA มันเป็นส่วนหนึ่งของหลักสูตรของฉันที่นำมาจาก โครงสร้างข้อมูลสดและชุดข้อมูลอัลโก
หมายเหตุ: นี่คือ conent พรีเมี่ยม ค้นหาหัวข้อที่คุณสนใจจากหัวข้อไฮไลต์หรือทำตามวันที่ชาญฉลาด คุณสามารถจบเนื้อหาในแต่ละวันใน 1 วันเพื่อให้คุณก้าวต่อไปและมีแรงจูงใจ อย่าทำมากเกินไปและไม่ต้องทำ พยายามให้สอดคล้องกันมาก
| วันสอนที่ชาญฉลาด | หมวดหมู่หัวข้อ | หัวข้อไฮไลท์ |
|---|---|---|
| วันที่ 1 | การเขียนโปรแกรมขั้นพื้นฐาน | จำนวนมากที่สุด, ลูปสาธิต, การสาธิตฟังก์ชั่น, การตรวจสอบที่สำคัญ, ความสนใจง่าย, ผลรวมของจำนวนธรรมชาติ, ส่วนที่เหลือเท่ากัน |
| วันที่ 2 | คณิตศาสตร์ | GCD ของสองหมายเลข, nth fibonacci, การตรวจสอบที่สำคัญ, หมายเลขย้อนกลับ |
| วันที่ 3 | การพิมพ์ลวดลาย | สี่เหลี่ยมจัตุรัสสามเหลี่ยมซ้ายสามเหลี่ยมขวา, Gunny, กระจก, รูปสามเหลี่ยมตัวเลข, รูปแบบตัวเลข |
| วันที่ 4 | ชนิดข้อมูล | ไบนารีเป็นทศนิยมชนิดข้อมูลทศนิยมเป็นไบนารีการแปลงอุณหภูมิ |
| วันที่ 5 | อาร์เรย์ | การสาธิตอาร์เรย์ฟังก์ชั่นใน Java ค่าสูงสุดในอาร์เรย์ |
| วันที่ 6 | การเรียงลำดับและการค้นหา | การเรียงลำดับฟอง, เรียงลำดับการแทรก, การเลือกการเลือก, การค้นหาเชิงเส้น, อาร์เรย์ย้อนกลับ, ผลรวมสูงสุดของ subarray |
| วันที่ 7 | สตริงและอาร์เรย์ | การสาธิต ArrayList, StringBuilder Demo, Strings Demo, การดำเนินการสตริง, การสาธิตอาร์เรย์ 2D, การพิมพ์เกลียว, คลื่นพิมพ์ |
| วันที่ 8 | การจัดการบิต | การกำบังบิต, นับ n บิต, สกัดบิต n, กำลังของการตรวจสอบสอง, ขวาส่วนใหญ่, เปิดบิต, สององค์ประกอบที่ไม่ซ้ำกันในอาร์เรย์, สององค์ประกอบที่หายไป |
| วันที่ 9 | อัลกอสที่มีชื่อเสียง | ผลรวม subarray สูงสุด, Algo ของ Kadane, ตะแกรงของ Eratosthenes, ผลรวมของเมทริกซ์ย่อยทั้งหมด |
| วันที่ 10 | การเรียกซ้ำ - ฉัน | แฟคทอเรียล, nth fibonacci, การค้นหาเชิงเส้นซ้ำ, ย้าย x ทั้งหมดที่ปลายซ้ำ, พลังของ n, การลดลงพิมพ์, พิมพ์เพิ่ม, พิมพ์ลดการพิมพ์เพิ่มขึ้นพิมพ์ด้วย skip, array ที่ออก |
| วันที่ 11 | การเรียกซ้ำ - II | นับเส้นทางเขาวงกต, การเรียงสับเปลี่ยนของสตริง, รหัสของสตริง, เส้นทางการพิมพ์บอร์ด, รหัสปุ่มกดพิมพ์, เส้นทางเขาวงกตพิมพ์, การพิมพ์ลำดับสตริง |
| วันที่ 12 | การเรียกซ้ำ - III | ปัญหาของราชินีการเปลี่ยนรูปด้วยการแลกเปลี่ยนคำสั่งพจนานุกรมพจนานุกรมหอคอยแห่งฮานอยเส้นทางเขาวงกตด้วยอุปสรรค |
| วันที่ 13 | การย้อนรอย | เส้นทางบอร์ดพร้อมบันได, เส้นทางช้างทั้งหมด, Suduko Solver, ปัญหาบันได N (วิธีการเข้าถึง N Stairs) |
| วันที่ 14 | การค้นหาและการเรียงลำดับ | การค้นหาแบบไบนารีดัชนีแรกของ N ดัชนีสุดท้ายของ N, บันไดความสูงสูงสุด, ค้นหาในเมทริกซ์ 2D, การเรียงลำดับอย่างรวดเร็ว, การเรียงลำดับ |
| วันที่ 15 | อุ๊ปส์การจัดการข้อยกเว้น | ชั้นเรียนวัตถุลองจับตัวอย่างการเข้าถึงตัวระบุการเข้าถึง |
| วันที่ 15.1 | อ๊ะสแต็ก | การสาธิตคลาส, การสาธิตตัวสร้าง, getter setter, ตัวแปรสแตติก, ตัวแปรอินสแตนซ์, อาร์เรย์วัตถุ, สแต็ค |
| วันที่ 16 | อ๊ะคิว | การเข้าถึงการสาธิตตัวระบุการสาธิตการสืบทอดคิวโดยใช้อาร์เรย์การสาธิต Absract, Polymorphism Demo |
| วันที่ 17 | สแต็คและคิว | สแต็คแบบไดนามิกคิวแบบไดนามิกคิวโดยใช้สแต็ก enqueue มีประสิทธิภาพ, สมดุล paranthesis, reverse queue, reverse stack, องค์ประกอบที่มากขึ้นถัดไป, สแต็กโดยใช้อาร์เรย์, คิวโดยใช้อาร์เรย์ |
| วันที่ 18 | LinkedList | การใช้งาน LinkedList, reverse linkedList โดยการย้อนกลับข้อมูลซ้ำ ๆ ตัวชี้ซ้ำรายการข้อมูลโดยตัวชี้ |
| วันที่ 19 | LinkedList, stack, คิว | โหนด kth จากโหนดสุดท้ายนับสี่เหลี่ยมที่แตกต่าง, ตรวจจับวัฏจักรใน ll, revese ll, mergesort to ll, กลางของ ll |
| วันที่ 20 | ต้นไม้ไบนารี | การใช้ทรีไบนารี, ค้นหาองค์ประกอบ, ความสูงของ BT, ข้อมูลสูงสุดใน BT, ข้อมูลขั้นต่ำใน BT, Mirror BT, ขนาดของ BT, Tree Traversals (preorder, inorder, postorder) |
| วันที่ 21 | ต้นไม้ไบนารี | เส้นผ่านศูนย์กลางของต้นไม้ตรวจสอบต้นไม้ที่สมดุลมุมมองด้านซ้ายมุมมองขวารากไปจนถึงการเคลื่อนที่ของใบผลรวมของโหนดใบไม้ |
| วันที่ 22 | HashMap & Generics | การสาธิต HashMap, Demos Concept ทั่วไป |
| วันที่ 23 | กอง | การใช้งานฮีป |
| วันที่ 24 | การเขียนโปรแกรมแบบไดนามิก | Fibonacci ปัญหาซ้ำ ๆ วิธีการ DP แบบเรียกซ้ำ |
| การเรียกซ้ำ | การเรียกซ้ำ | การเรียงลำดับฟอง, n แฟคทอเรียล, ดัชนีแรก, ดัชนีสุดท้าย, nth fibonacci, พลังของ n, การพิมพ์ skip ลดการเพิ่มขึ้น, ตรวจสอบอาร์เรย์เรียงลำดับ, การพิมพ์ที่เพิ่มขึ้น, การลดการพิมพ์, ผลรวมของ n คำศัพท์ |
GeeksForGeeks
- อาร์เรย์
- คณิตศาสตร์
- กราฟ
LeetcodeSeperate Leetcode repository Explore Cards
- อาร์เรย์
Monthly Challenges
- ความท้าทายในเดือนสิงหาคม
- ความท้าทายตุลาคม
- อาจท้าทาย
Questions by difficulty order
Top Interview Questionsไดเรกทอรีราก
- คำถามบ่อยๆ
Question set from Interview Prep directory| Sn. | หัวข้อ DSA | ฝึกหัด |
|---|---|---|
| 1 | การเขียนโปรแกรมขั้นพื้นฐาน | การพิมพ์รูปแบบต่าง ๆ , ปัญหาทางคณิตศาสตร์, ซีรีย์ Fibonacci, GCD, หมายเลขนายก, หมายเลขย้อนกลับ, จำนวนรวม N Nature, อื่น ๆ ถ้า DEMO |
| 2 | ชนิดข้อมูล | ตารางอุณหภูมิการตรวจสอบตัวพิมพ์บนหรือล่าง |
| 3 | ฟังก์ชั่น, อาร์เรย์ 1D, ระบบตัวเลข, การค้นหา, การเรียงลำดับ | การค้นหาเชิงเส้น, การค้นหาแบบไบนารี, การเรียงลำดับการเรียง, การเรียงลำดับการเลือก, การเรียงลำดับฟอง, ปัญหาการแปลงพื้นฐาน, ดัชนีส่วนบนและล่างขององค์ประกอบการค้นหา, ค่าสูงสุดในอาร์เรย์ |
| 4 | อาร์เรย์ 2d | การสาธิตอาร์เรย์ 2d, การพิมพ์รูปแบบคลื่น, คลื่นเกลียวพิมพ์ |
| 5 | สตริงและสตริง | การสาธิตสตริง, การสาธิต StringBuilder, พิมพ์ substrings ทั้งหมด, พิมพ์อักขระในสตริง |
| 6 | การเรียกซ้ำ | การเรียงลำดับฟอง, แฟคทอเรียล, ดัชนีแรกและสุดท้ายในอาร์เรย์, อาร์เรย์ที่ออก, nth ฟีโบนักชี, การพิมพ์ลวดลาย, พลังของ N, ค้นหาดัชนีทั้งหมดของรายการ, การลดลงพิมพ์, พิมพ์เพิ่ม, พิมพ์ลดการพิมพ์ที่เพิ่มขึ้น |
| 7 | รับการเรียกซ้ำ | พิมพ์การเรียงสับเปลี่ยนทั้งหมดของสตริงเส้นทางเขาวงกตเส้นทางเขาวงกตแนวทแยง |
| 9 | พิมพ์ซ้ำ | เส้นทางการพิมพ์บอร์ด, เส้นทางเขาวงกตพิมพ์, เส้นทางเขาวงกตแนวทแยงมุม, พิมพ์ n ควีนส์, การพิมพ์ลำดับ, เส้นทางการนับกระดาน, เส้นทางเขาวงกตนับ, นับเขาวงกตเส้นทางเส้นทแยงมุม, นับ n ควีนส์ |
| 10 | ความซับซ้อนของเวลาและอวกาศ | การเรียงลำดับการเรียงลำดับอย่างรวดเร็ว, พลังและที่ดีที่สุด, ตะแกรงของ Eratosthenes, ปัญหาธงประจำชาติของดัตช์ |
| 11 | กองซ้อน | ใช้สแต็กโดยใช้อาร์เรย์, รีเวิร์สสแต็ก, องค์ประกอบที่มากขึ้นถัดไปในอาร์เรย์ |
| 12 | สแต็คและคิว | ใช้คิวโดยใช้อาร์เรย์, สแต็ก & linkedList, คิวย้อนกลับ, สแต็คโดยใช้คิวพุชและป๊อปที่มีประสิทธิภาพคิวโดยใช้สแต็ก enqueue & dequeue มีประสิทธิภาพสูงสุดในแต่ละ subarray ของหน้าต่าง k, ตัวละครที่ไม่ใช่การทำซ้ำจำนวนแรก |
| 13 | การย้อนรอย | N Queens, N Knights, N Queen Generic, Queen Permutations, Queen Combinations, การรวมกันของราชินีกับการฆ่า, การเปลี่ยนรูปแบบการเปลี่ยนรูป |
| 14 | LinkedList | ใช้ LinkedList, stack โดยใช้ LL, คิวโดยใช้ LL |
| 15 | ต้นไม้ | ใช้ทรีไบนารีต้นไม้ทั่วไปต้นไม้ค้นหาไบนารี |
| 16 | อินเทอร์เฟซและทั่วไป | การสาธิตทั่วไป, สแต็คแบบไดนามิก, การเรียงลำดับฟองทั่วไป, การสาธิตเปรียบเทียบ |
| 17 | Hashmap | ใช้ HashMap ตั้งแต่เริ่มต้นคอลเลกชัน Subarray Sum Zero ปัญหาการแยกอาเรย์, LinkedList ทั่วไป, อักขระความถี่สูงสุด |
| 18 | กอง | ใช้กองตั้งแต่เริ่มต้นด้วยการดำเนินการต่างๆ |
| 19 | พยายาม | ใช้ trie, heap generic, huffman encoder สำหรับการเพิ่มประสิทธิภาพพื้นที่ |
| 20 | การเขียนโปรแกรมแบบไดนามิก | เส้นทางของบอร์ด, เส้นทางการนับกระดาน, จำนวนสตริงไบนารี, เกมดันเจี้ยน, ปัญหาระยะทางแก้ไข, ฟีโบนักชี, LCS, K สั่ง LCS, ปัญหาการเล่น, LCs ของ 3 สาย, การเพิ่มขึ้นของการจับคู่แบบพาล ปัญหา (4 แนวทางสำหรับปัญหาส่วนใหญ่) |
| 21 | กราฟ | ใช้กราฟตั้งแต่เริ่มต้นอัลกอริทึมและปัญหากราฟทั้งหมด |
| 22 | ทรีเซ็กเมนต์ | ใช้ทรีเซ็กเมนต์ |
| 23 | บิตปิดบัง/บิตเวทมนตร์ | เพิ่มหนึ่ง, ตรวจสอบกำลังของ 2, ตรวจสอบแม้กระทั่งคี่, แยกบิต, หายไป 2 หมายเลข, หมายเลขมายากล, sum pascal, รีเซ็ตบิต, บิตชุดขวาสุด, ตั้งค่าบิต, องค์ประกอบที่ไม่ซ้ำกัน, องค์ประกอบที่ไม่ซ้ำกัน, |
| 24 | ต้นไม้ทั่วไป | ใช้ทรีทั่วไปตั้งแต่เริ่มต้นปัญหาต่าง ๆ เกี่ยวกับมัน |
| 25 | ต้นไม้ไบนารี | ใช้ทรีไบนารีตั้งแต่เริ่มต้นปัญหาต่าง ๆ |
| 26 | คอลเลกชัน Java | แผนที่, ชุด, เวกเตอร์, การสาธิตอินเทอร์เฟซคิว |
| 27 | อ๊ะ | สาธิตอ๊ะ |
Codeforces