หน้าแรก
หน้าแรก
สมมติว่าเรามีต้นไม้ไบนารี เราต้องหาการข้ามผ่านคำสั่งระดับซิกแซก ดังนั้นสำหรับแถวแรก ให้สแกนจากซ้ายไปขวา จากนั้นจากขวาไปซ้ายจากแถวที่สอง จากนั้นอีกครั้งจากซ้ายไปขวาและอื่นๆ ดังนั้นถ้าต้นไม้เป็นเหมือน − ลำดับการข้ามผ่านจะเป็น [[3],[20,9],[15,7]] เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ - ห
สมมติว่าเราต้องใช้เครื่องคำนวณพื้นฐานเพื่อประเมินสตริงนิพจน์อย่างง่าย สตริงนิพจน์จะเก็บเฉพาะจำนวนเต็มที่ไม่ติดลบ ตัวดำเนินการบางตัวเช่น +, -, *, / และช่องว่าง การหารจำนวนเต็มควรใช้เฉพาะส่วนของผลหารเท่านั้น ดังนั้นหากอินพุตเป็นเหมือน “3+2*2” เอาต์พุตจะเป็น 7 เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่าน
สมมติว่าเรามีอาร์เรย์ A เราต้องสับเปลี่ยนชุดตัวเลขโดยไม่ซ้ำกัน ดังนั้นหากอินพุตเป็น [1,2,3] สำหรับการสับเปลี่ยน มันจะเป็น [1,3,2] หลังจากรีเซ็ตแล้ว หากเราสับใหม่อีกครั้ง มันจะเป็น [2,3,1] เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ - จะมีวิธีการต่างๆ สิ่งเหล่านี้คือ init(), reset(), shuffle() สิ่
สมมติว่าเรามีรูทของไบนารีทรี แต่ละโหนดมีค่าตั้งแต่ 0 ถึง 25 ซึ่งแทนตัวอักษร a ถึง z:ค่า 0 แทน a ค่า 1 แทน b และอื่นๆ เราต้องค้นหาสตริงที่เล็กที่สุดเกี่ยวกับศัพท์เฉพาะที่เริ่มต้นที่ใบไม้ของต้นไม้ต้นนี้และสิ้นสุดที่ราก ดังนั้นถ้าต้นไม้เป็นเหมือน − จากนั้นผลลัพธ์จะเป็น “adz” ตามลำดับคือ [0,3,25]
สมมติว่าเราต้องสร้างแผนผังการค้นหาแบบไบนารีที่ตรงกับการข้ามผ่านของการสั่งซื้อล่วงหน้าที่กำหนด ดังนั้นหากการสั่งจองล่วงหน้าเป็นเหมือน [8,5,1,7,10,12] ผลลัพธ์จะเป็น [8,5,10,1,7,null,12] ดังนั้นต้นไม้จะเป็น: เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ - root :=0th โหนดของรายการการสั่งผ่านล่วงหน้า st
สมมติว่ามีสายพานลำเลียงที่มีบรรจุภัณฑ์ที่จะจัดส่งจากท่าเรือหนึ่งไปยังอีกที่หนึ่งภายใน D วัน ที่นี่แพ็คเกจที่ i บนสายพานลำเลียงมีน้ำหนัก[i] ในแต่ละวันเราจะบรรทุกของขึ้นเรือพร้อมกับพัสดุบนสายพาน เราจะไม่บรรทุกน้ำหนักเกินความจุน้ำหนักสูงสุดของเรือ เราต้องหาความจุน้ำหนักน้อยที่สุดของเรือที่จะส่งผลให้บรร
สมมุติว่าเจ้าของร้านหนังสือเปิดร้านตามจำนวนลูกค้าที่เข้ารายการเป็นนาที ในแต่ละนาที ลูกค้าจำนวนหนึ่ง (ลูกค้า[i]) จะเข้ามาในร้าน หลังจากนั้นลูกค้าทั้งหมดจะออกจากร้านหลังจากสิ้นสุดนาทีนั้น เจ้าของไม่พอใจในบางนาที ตอนนี้ ถ้าเจ้าของร้านหนังสือไม่พอใจในนาทีที่ i ก็ให้ไม่พอใจ[i] =1 มิฉะนั้น ไม่พอใจ[i] =0 เ
สมมติว่าเรามีต้นไม้ไบนารี โหนดเรียกว่าไม่เพียงพอหากทุกเส้นทางจากรากถึงปลายที่ตัดกับโหนดนี้มีผลรวมน้อยกว่าขีด จำกัด อย่างเคร่งครัด เราต้องลบโหนดที่ไม่เพียงพอทั้งหมดพร้อมกัน และส่งคืนรูทของไบนารีทรีที่เป็นผลลัพธ์ ดังนั้นถ้าต้นไม้นั้นเหมือน และขีดจำกัดคือ 1 − จากนั้นต้นไม้ผลลัพธ์จะเป็น − เพื่อแก้
สมมติว่าเรามีข้อความ เราต้องหาลำดับย่อยของข้อความที่เล็กที่สุดเกี่ยวกับพจนานุกรมศัพท์ซึ่งมีอักขระที่ชัดเจนทั้งหมดของข้อความในครั้งเดียว ดังนั้นหากอินพุตเป็นเหมือน “cdadabcc” เอาต์พุตจะเป็น “adbc” เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ - กำหนดสแต็ก st, สองแผนที่ last_o และถือว่าว่างในตอนแรก สำห
สมมติว่าเรามีเมทริกซ์ A ของจำนวนเต็มที่มีแถว R และคอลัมน์ C เราต้องหาคะแนนสูงสุดของเส้นทางที่เริ่มต้นจาก [0,0] และสิ้นสุดที่ [R-1,C-1] ที่นี่เทคนิคการให้คะแนนจะเป็นค่าต่ำสุดในเส้นทางนั้น ตัวอย่างเช่น ค่าของเส้นทาง 8 → 4 → 5 → 9 คือ 4 เส้นทางจะย้ายจำนวนครั้งจากเซลล์ที่เข้าชมหนึ่งไปยังเซลล์ที่ไม่ได้เย
สมมติว่าเรามีหนังสือเป็นลำดับ - ที่นี่หนังสือเล่มที่ i มีหนังสือความหนา[i][0] และความสูง[i][1] หากเราต้องการจัดวางหนังสือเหล่านี้บนชั้นวางหนังสือที่มีความกว้างทั้งหมด หากเราเลือกหนังสือบางเล่มที่จะวางบนชั้นวางนี้ (เช่น ผลรวมของความหนาคือ <=shelf_width) ให้สร้างชั้นวางอีกระดับของตู้หนังสือโดยที่ความส
สมมติว่าเรามีรูทของไบนารีทรี แต่ละโหนดในทรีมีค่าเฉพาะ หลังจากลบโหนดทั้งหมดที่มีค่าใน to_delete เราจะเหลือฟอเรสต์ เราต้องหารากของต้นไม้ในป่าที่เหลืออยู่ ดังนั้นหากอินพุตเป็นแบบ ถ้าอาร์เรย์ to_delete เหมือนกับ [3,5] ผลลัพธ์จะเป็น เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ - กำหนดความละเอียดของอ
สมมติว่าเรามีสตริง สตริงนั้นเป็นสตริงในวงเล็บที่ถูกต้อง (แสดง VPS) หากประกอบด้วยอักขระ ( และ ) เท่านั้น และเป็นไปตามคุณสมบัติเหล่านี้ - เป็นสตริงว่างหรือ สามารถเขียนเป็น AB โดยที่ A และ B เป็น VPS หรือ สามารถเขียนเป็น (A) โดยที่ A คือ VPS นอกจากนี้เรายังสามารถกำหนดความลึกของรัง (S) ของ V
สมมติว่าเรามีอาร์เรย์ arr ของจำนวนเต็มบวก พิจารณาไบนารีทรีทั้งหมดเช่นนั้น − แต่ละโหนดมี 0 หรือ 2 ลูก ค่าของอาร์เรย์ arr สอดคล้องกับค่าของแต่ละลีฟในการข้ามผ่านของต้นไม้ ค่าของโหนดที่ไม่ใช่ใบไม้แต่ละโหนดจะเท่ากับผลคูณของค่าลีฟที่ใหญ่ที่สุดในทรีย่อยด้านซ้ายและด้านขวาตามลำดับ ในบรรดาต้นไม้ไบนารีที่เป
สมมติว่ามีหลักสูตร numCourses ทั้งหมดที่เราต้องทำ โดยมีป้ายกำกับตั้งแต่ 0 ถึง numCourses-1 บางหลักสูตรอาจมีข้อกำหนดเบื้องต้น เช่น หากต้องการเรียนหลักสูตร 0 เราต้องเรียนหลักสูตร 1 ก่อน ซึ่งแสดงโดยใช้คู่:[0,1] สมมุติว่ามีจำนวนรายวิชาที่จัดให้ทั้งหมดและมีรายชื่อคู่บังคับก่อน เราต้องตรวจสอบก่อนว่าท่านจะ
สมมติว่ามีหลักสูตรทั้งหมด n หลักสูตร โดยจะมีป้ายกำกับตั้งแต่ 0 ถึง n-1 บางหลักสูตรอาจมีข้อกำหนดเบื้องต้น เมื่อพิจารณาจากจำนวนหลักสูตรทั้งหมดและรายชื่อคู่ข้อกำหนดเบื้องต้น เราต้องหาลำดับหลักสูตรที่ควรทำเพื่อจบหลักสูตรทั้งหมด อาจมีคำสั่งซื้อที่ถูกต้องหลายรายการ เราแค่ต้องหาคำสั่งซื้อหนึ่งรายการ หากไม่
สมมติว่าเรามีรายการจำนวนเต็มซ้อนกัน เราต้องใช้ตัววนซ้ำเพื่อทำให้เรียบ แต่ละองค์ประกอบเป็นจำนวนเต็มหรือรายการ องค์ประกอบของรายการนั้นอาจเป็นจำนวนเต็มหรือรายการอื่นๆ ดังนั้นหากอินพุตเป็นเหมือน [[1, 1], 2, [1, 1]] ผลลัพธ์จะเป็น [1, 1, 2, 1, 1] เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ - ในส่วนเริ่
สมมติว่าเรามีโครงสร้างข้อมูลที่รองรับการดำเนินการต่อไปนี้ทั้งหมดในเวลาเฉลี่ย O(1) insert(val) − สิ่งนี้จะแทรก val รายการไปยังชุดหากยังไม่มีอยู่ remove(val) − สิ่งนี้จะลบ val ของไอเท็มออกจากเซ็ตหากมีอยู่ getRandom - สิ่งนี้จะส่งคืนองค์ประกอบสุ่มจากชุดองค์ประกอบปัจจุบัน แต่ละองค์ประกอบต้องมีค
สมมติว่าเรามีเครื่องคิดเลขที่เสียซึ่งมีตัวเลขแสดงอยู่บนจอแสดงผล เราสามารถดำเนินการได้เพียงสองครั้งเท่านั้น - Double − สิ่งนี้จะคูณตัวเลขบนหน้าจอด้วย 2 หรือ; การลดลง - สิ่งนี้จะลดจำนวนที่แสดงลง 1, เริ่มแรก เครื่องคิดเลขกำลังแสดงตัวเลข X เราต้องหาจำนวนการดำเนินการขั้นต่ำที่จำเป็นในการแสดงตัวเ
สมมติว่าในกลุ่มสังคม มี N คนที่แตกต่างกัน โดยมีรหัสจำนวนเต็มที่ไม่ซ้ำกันตั้งแต่ 0 ถึง N-1 ที่นี่ เรามีรายการบันทึก โดยแต่ละ logs[i] =[time, id_A, id_B] มีการประทับเวลาของจำนวนเต็มไม่เป็นลบ และรหัสของคนสองคนที่แตกต่างกัน บันทึกแต่ละรายการจะแสดงเวลาที่คนสองคนกลายเป็นเพื่อนกัน ถ้า A เป็นเพื่อนกับ B แล้