หน้าแรก
หน้าแรก
ในปัญหานี้ เราได้รับ n จุดที่โกหกระนาบ 2 มิติ แต่ละพิกัดคือ (x,y) งานของเราคือการแก้ปัญหาการสืบค้นสองครั้ง สำหรับแต่ละข้อความค้นหา เราได้รับจำนวนเต็ม R เราจำเป็นต้องหาจำนวนจุดที่อยู่ภายในวงกลม โดยใช้จุดศูนย์กลางของวงกลมที่จุดกำเนิดและรัศมี R คำอธิบายปัญหา สำหรับแต่ละข้อความค้นหา เราจำเป็นต้องค้นหาจ
ในปัญหานี้ เราได้รับไบนารีเมทริกซ์ bin[][] ขนาด nXm งานของเราคือแก้แบบสอบถาม q ทั้งหมด สำหรับข้อความค้นหา (x, y) เราจำเป็นต้องค้นหาจำนวนเมทริกซ์ย่อยขนาด xx*x เพื่อให้องค์ประกอบทั้งหมดของอาร์เรย์ y (เลขฐานสอง) คำอธิบายปัญหา ในที่นี้ เราต้องนับจำนวนทั้งหมดของเมทริกซ์ย่อยของขนาดที่กำหนดที่ประกอบด้วยหน
ในปัญหานี้ เราได้รับสตริงอินพุตและอาร์เรย์ arr[] งานของเราคือค้นหาการเกิดขึ้นของคำทั้งหมดในอาร์เรย์ในสตริง สำหรับสิ่งนี้ เราจะใช้อัลกอริทึม Aho-Corasick สำหรับการค้นหารูปแบบ การค้นหาสตริงและรูปแบบเป็นสิ่งสำคัญในการเขียนโปรแกรม และในการเขียนโปรแกรม ยิ่งอัลกอริธึมดีเท่าไหร่ก็ยิ่งใช้งานได้จริงมากขึ้น
ในที่นี้ เราได้รับตัวเลข N หน้าที่ของเราคือค้นหาการเปลี่ยนแปลงที่ไม่เรียงลำดับของ N โดยใช้ Alexander Bogomolnys UnOrdered Permutation Algorithm มาคุยกันเรื่องการเรียงสับเปลี่ยนกันก่อน การเปลี่ยนแปลง คือจำนวนวิธีที่รายการในชุดสามารถเรียงลำดับได้ไม่ซ้ำกันเรียกว่าการเรียงสับเปลี่ยน ตัวอย่าง − การเร
การประมาณค่าเป็นเทคนิคการประมาณค่าประเภทหนึ่งที่ไม่ทราบค่าซึ่งอยู่ระหว่างค่าที่ทราบ การประมาณค่าเป็นกระบวนการในการสร้างจุดข้อมูลใหม่ระหว่างช่วงของจุดข้อมูลความรู้ที่ไม่ต่อเนื่อง แอปพลิเคชันหรือเหตุผลในการใช้การแก้ไขคืออาจลดต้นทุนในการคำนวณ เมื่อสูตร (ฟังก์ชัน) ในการคำนวณค่าบางค่าซับซ้อนเกินไปหรือมี
ในปัญหานี้ เราได้รับอาร์เรย์ของสตริง str[] งานของเราคือการหาคะแนนของสตริงทั้งหมดในอาร์เรย์ คะแนนถูกกำหนดเป็นผลคูณของตำแหน่งของสตริงโดยมีผลรวมของค่าตัวอักษรของอักขระของสตริง มาดูตัวอย่างเพื่อทำความเข้าใจปัญหากัน ป้อนข้อมูล str[] = {“Learn”, “programming”, “tutorials&r
ในปัญหานี้ เราได้รับรายการที่เชื่อมโยง งานของเราคือพิมพ์ผลรวมของโหนดสำรองของรายการที่เชื่อมโยง Linked list คือลำดับของโครงสร้างข้อมูลซึ่งเชื่อมต่อเข้าด้วยกันผ่านทางลิงก์ ตอนนี้ขอกลับไปที่ปัญหา ที่นี่ เราจะเพิ่มโหนดสำรองของรายการที่เชื่อมโยง ซึ่งหมายความว่าเราจะเพิ่มโหนดเป็นตำแหน่ง 0, 2, 4, 6, …
ในปัญหานี้ เราได้รับตัวเลข N หน้าที่ของเราคือสร้างโปรแกรมเพื่อหาผลรวมของตัวเลข N ในฐานจาก 2 ถึง N/2 ดังนั้น เราต้องแปลงฐานของตัวเลขเป็นฐานทั้งหมดจาก 2 เป็น N/2 เช่น สำหรับ n =9 ฐานจะเป็น 2, 3, 4 และหาผลรวมของตัวเลขทั้งหมดในฐานเหล่านี้ มาดูตัวอย่างเพื่อทำความเข้าใจปัญหากัน ป้อนข้อมูล N = 5 ผลผ
ในปัญหานี้ เราได้ตัวเลขสองตัว L และ R เรายังมีอาร์เรย์ arr[] ที่ arr[i] =i*(-1)^i . งานของเราคือสร้างโปรแกรมเพื่อคำนวณผลรวมขององค์ประกอบจากดัชนี L ถึง R ในอาร์เรย์เมื่อ arr[i] =i*(-1)^i. ดังนั้น เราต้องหาผลรวมขององค์ประกอบภายในช่วง [L, R] ของอาร์เรย์ มาดูตัวอย่างเพื่อทำความเข้าใจปัญหากัน ป้อนข้
ในปัญหานี้ เราได้รับอาร์เรย์ arr ของตัวเลข N โดยที่ arr[i] แทนโหนด (i+1)th นอกจากนี้ยังมีขอบคู่ M โดยที่ u และ v เป็นตัวแทนของโหนดที่เชื่อมต่อโดยขอบ งานของเราคือสร้างโปรแกรมเพื่อค้นหาผลรวมขององค์ประกอบขั้นต่ำในองค์ประกอบที่เชื่อมต่อทั้งหมดของกราฟที่ไม่มีทิศทาง หากโหนดไม่มีการเชื่อมต่อกับโหนดอื่น ให้
ในปัญหานี้ เราได้รับไบนารีทรีที่สมบูรณ์ งานของเราคือสร้างโปรแกรมเพื่อค้นหาผลรวมของโหนดภาพมิเรอร์ของต้นไม้ไบนารีที่สมบูรณ์ในลักษณะที่ไม่เป็นระเบียบ ที่นี่ เราต้องหาเส้นทางที่ไม่เป็นระเบียบของต้นไม้ดวงอาทิตย์ด้านซ้าย จากนั้นสำหรับแต่ละโหนด เราจะเพิ่มภาพสะท้อนในกระจกด้วย ซึ่งหมายความว่า หากเราข้ามโหนด
ในปัญหานี้ เราได้กำหนดจำนวนเต็ม M1, M2 และ N สามจำนวน หน้าที่ของเราคือสร้างโปรแกรมเพื่อค้นหาผลรวมของทวีคูณของตัวเลขสองตัวที่ต่ำกว่า N ในที่นี้ เราจะเพิ่มองค์ประกอบทั้งหมดด้านล่าง N ซึ่งเป็นผลคูณของ M1 หรือ M2 มาดูตัวอย่างเพื่อทำความเข้าใจปัญหากัน ป้อนข้อมูล N = 13, M1 = 4, M2 = 6 ผลผลิต 20
ในปัญหานี้ เราได้รับตัวเลขสามตัว N, K และ R หน้าที่ของเราคือสร้างโปรแกรมเพื่อค้นหาผลรวมของจำนวนธรรมชาติ (มากถึง N) ซึ่งโมดูโลมี K ผลตอบแทน R. เราจะบวกตัวเลขทั้งหมดที่น้อยกว่า N ที่ตรงตามเงื่อนไขต่อไปนี้ i%K ==R. มาดูตัวอย่างเพื่อทำความเข้าใจปัญหากัน ป้อนข้อมูล N = 14, K = 4, R = 1 ผลผลิต 28
ในปัญหานี้ เราได้รับรายการเชื่อมโยงแบบวงกลม งานของเราคือสร้างโปรแกรมเพื่อค้นหาผลรวม ของโหนดของรายการเชื่อมโยงแบบวงกลม เราเพียงแค่ต้องเพิ่มค่าโหนดทั้งหมดของรายการที่เชื่อมโยง คำจำกัดความที่สำคัญบางประการ Linked List คือลำดับของโครงสร้างข้อมูลซึ่งเชื่อมต่อกันผ่านลิงก์ รายการที่เชื่อมโยงแ
คิวเป็นโครงสร้างข้อมูลนามธรรมที่มีชุดขององค์ประกอบ คิวใช้กลไก FIFO กล่าวคือองค์ประกอบที่แทรกก่อนจะถูกลบก่อนเช่นกัน อ้อยในคิวเป็นโครงสร้างข้อมูลเชิงเส้นเดียว แต่อาจสร้างปัญหาได้หากเราใช้คิวโดยใช้อาร์เรย์ บางครั้งการใช้การแทรกและการลบแบบต่อเนื่องกัน ตำแหน่งด้านหน้าและด้านหลังจะเปลี่ยนไป ในขณะนั้นคิวจ
อย่างที่เราทราบดีว่าโครงสร้างข้อมูลคิวเป็นโครงสร้างข้อมูลแบบเข้าก่อนออกก่อน คิวมีรูปแบบบางอย่างด้วย นี่คือ Dequeue และ Priority Queue Dequeue นั้นเป็นคิวที่สิ้นสุดสองครั้ง จึงมีคู่หน้าและคู่หลังสองคู่ ตัวชี้ด้านหน้าและด้านหลังคู่หนึ่งใช้เพื่ออธิบายคิวจากด้านซ้าย และอีกตัวหนึ่งใช้เพื่ออธิบายจากด้านข
ที่นี่เราจะเห็นแนวคิดพื้นฐานบางประการของการเรียงลำดับอาร์เรย์ อาร์เรย์เป็นโครงสร้างข้อมูลที่เป็นเนื้อเดียวกันเพื่อเก็บข้อมูลประเภทเดียวกันในบางตำแหน่งหน่วยความจำต่อเนื่องกัน บางครั้งเราจำเป็นต้องจัดเรียงองค์ประกอบเพื่อใช้งาน นอกจากนั้น เราสามารถสร้างอาร์เรย์ที่เรียงลำดับได้ ที่จะถูกจัดเรียงเสมอ ในก
ที่นี่เราจะเห็นอาร์เรย์หลายมิติ อาร์เรย์นั้นเป็นชุดของข้อมูลที่เป็นเนื้อเดียวกัน พวกมันถูกวางไว้ในตำแหน่งหน่วยความจำที่ต่อเนื่องกัน ในหลายกรณี เราจะเห็นว่าอาร์เรย์ไม่ใช่มิติเดียว บางครั้งเราต้องสร้างอาร์เรย์ในรูปแบบสองมิติหรือหลายมิติ อาร์เรย์หลายมิติสามารถแสดงได้ด้วยสองวิธีที่แตกต่างกัน นี่เป็นแนว
รายการที่เชื่อมโยงแบบวงกลมเป็นรูปแบบหนึ่งของรายการที่เชื่อมโยง โดยองค์ประกอบแรกชี้ไปที่องค์ประกอบสุดท้าย และองค์ประกอบสุดท้ายชี้ไปที่องค์ประกอบแรก ทั้งรายการที่เชื่อมโยงแบบเดี่ยวและรายการที่เชื่อมโยงแบบทวีคูณสามารถทำเป็นรายการที่เชื่อมโยงแบบวงกลมได้ ในรายการที่มีการเชื่อมโยงแบบทวีคูณ ตัวชี้ถัดไปของ
ที่นี่เราจะเห็นโครงสร้างข้อมูลต้นไม้ไบนารีแบบเธรด เรารู้ว่าโหนดไบนารีอาจมีลูกได้มากที่สุดสองคน แต่ถ้าพวกเขามีลูกเพียงคนเดียว หรือไม่มีลูก ส่วนลิงก์ในการแสดงรายการลิงก์ยังคงเป็นโมฆะ ด้วยการใช้การแสดงไบนารีทรีแบบเธรด เราสามารถใช้ลิงก์ว่างนั้นซ้ำได้โดยการสร้างเธรดบางอัน หากโหนดหนึ่งมีพื้นที่ชายน์ว่างด