หน้าแรก
หน้าแรก
สมมติว่าเรามีรายการหมายเลขที่เรียกว่า nums เราสามารถแบ่งรายการออกเป็นรายการย่อยบางรายการแล้วจัดเรียงแต่ละส่วน เราต้องหาจำนวนรายการย่อยสูงสุดที่เราสามารถแบ่งพาร์ติชั่นได้ ตัวเลขทั้งหมดจะถูกจัดเรียงในภายหลัง ดังนั้น หากอินพุตมีค่าเท่ากับ nums =[4, 3, 2, 1, 7, 5] ผลลัพธ์จะเป็น 2 เนื่องจากเราสามารถจัดเ
สมมติว่าเรามีรายการตัวเลขที่เรียกว่า nums และอีกค่าหนึ่งคือ k เราต้องตรวจสอบว่ารายการสามารถแบ่งออกเป็นคู่ได้หรือไม่ เพื่อให้ผลรวมของแต่ละคู่หารด้วย k ลงตัว ดังนั้น หากอินพุตมีค่าเท่ากับ nums =[4, 7, 2, 5] k =6 เอาต์พุตจะเป็น True เนื่องจากเราสามารถแบ่งรายการที่กำหนดออกเป็นคู่ๆ เช่น (4, 2) และ (8, 1
สมมติว่าเรามีรายการไบนารี (1 และ 0 ในรายการ) และค่าอื่น k แต่ละค่าเป็น nums แสดงถึงสถานะของเซลล์ในเรือนจำ โดยที่ 1 หมายถึงเซลล์ที่ถูกครอบครอง และ 0 หมายถึงเซลล์ว่าง ในแต่ละวันเมื่อเซลล์มีเซลล์ที่อยู่ติดกันสองเซลล์ซึ่งว่างทั้งสองเซลล์หรือว่างทั้งสองเซลล์ เซลล์นั้นจะถูกเซลล์ว่างอยู่ มิฉะนั้นจะว่างเปล่
สมมติว่าเรามีรายการตัวเลข A, B, C และ D สี่รายการ และยังมีค่าเป้าหมายด้วย เราต้องหาจำนวนของสี่เท่าที่แตกต่างกัน (i, j, k, l) ที่ A[i] + B[ j] + C[k] + D[l] เหมือนกับเป้าหมาย ดังนั้น หากอินพุตเป็น A =[5, 4, 3] B =[8, 4] C =[6, 2] D =[4, 10] เป้าหมาย =23 ผลลัพธ์จะเป็น 3 ค่าสี่เท่า คือ [5, 8, 6, 4] [3
สมมติว่าเรามีเมทริกซ์ 2 มิติ โดยแต่ละแถวมีค่าสองค่า [height, count] ซึ่งบ่งชี้ว่าบุคคลนั้นให้ความสูง และมีจำนวน นับ อยู่ข้างหน้าพวกเขาอย่างน้อยก็สูงพอๆ กับพวกเขา ตอนนี้พิจารณาว่ามีการสับเปลี่ยนคิว เราต้องกู้คืนลำดับเดิมของคิว ดังนั้นหากอินพุตเป็นแบบ 2 2 4 0 5 0 แล้วผลลัพธ์ที่ได้จะ
สมมติว่าเรามีตัวเลข n เราต้องหารหัสสีเทาสำหรับตัวเลขที่ระบุ (หรืออีกนัยหนึ่งคือ รหัสสีเทาที่ n) อย่างที่เราทราบดีว่ารหัสสีเทาเป็นวิธีการเรียงลำดับเลขฐานสอง โดยที่ค่าของตัวเลขที่ต่อเนื่องกันแต่ละจำนวนจะต่างกันเพียงหนึ่งบิตเท่านั้น รหัสสีเทาบางส่วน ได้แก่ [0, 1, 11, 10, 110, 111 เป็นต้น] ดังนั้น หากอ
สมมติว่าเรามีสตริง s และอีกค่าหนึ่งคือ k เราจะลบอักขระที่ซ้ำกันที่เก่าที่สุด k ตัวที่ซ้ำกัน และส่งคืนสตริงสุดท้าย ดังนั้น หากอินพุตเป็น s =paaappmmmma k =3 เอาต์พุตจะเป็น ma เช่นเดียวกับเมื่อเราลบ a สามรายการเพื่อให้ได้ pppmmmma จากนั้นเราลบสาม p เพื่อรับ mmmma จากนั้นลบสามในสี่ m เพื่อรับ ma เพื่
สมมติว่าเรามีรายการตัวเลขที่เรียกว่าเป้าหมาย ตอนนี้ ให้เราพิจารณารายการ X ที่มีความยาวเท่ากับรายการที่กำหนด และ X จะถูกเติมด้วย 1s เราสามารถดำเนินการต่อไปนี้กี่ครั้งก็ได้ตามต้องการ:ใช้ดัชนี i ใดๆ ใน X และตั้งค่า X[i] เป็นผลรวมปัจจุบันของ X สุดท้ายให้ตรวจสอบว่า X สามารถเปลี่ยนเป็นเป้าหมายได้หรือไม่
สมมติว่าเรามีนิพจน์ที่เก็บนิพจน์ไตรภาคไว้ เราต้องประเมินผลลัพธ์ของนิพจน์ รองรับค่าบางอย่างเช่น T และ F สำหรับ True และ False และ “?” และอักขระ “:” มีคุณสมบัติบางอย่าง: ความยาวของสตริงที่กำหนดต้องน้อยกว่าหรือเท่ากับ 10000 กลุ่มนิพจน์เงื่อนไขจากขวาไปซ้าย เงื่อนไขจะเป็น T หรือ F เสมอ ดังนั้นเงื่อนไขนี
สมมติว่าเรามีรายการที่เชื่อมโยง เรามีสองค่า i และ j เราต้องย้อนกลับรายการที่เชื่อมโยงจากโหนด i เป็น jth และสุดท้ายก็คืนรายการที่อัปเดต ดังนั้น หากอินพุตเป็น [1,2,3,4,5,6,7,8,9] i =2 j =6 ผลลัพธ์จะเป็น [1, 2, 7, 6, 5, 4 , 3, 8, 9, ] เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้: prev_head :=สร้างโหนด
สมมติว่าเรามีสตริงและชุดตัวคั่น เราต้องกลับคำในสตริง โดยที่ไม่ควรเปลี่ยนลำดับสัมพัทธ์ของตัวคั่น ดังนั้น หากอินพุตเป็น s =Computer/Network:Internet|tutorialspoint delims =[/, :, |] ผลลัพธ์จะเป็น tutorialspoint/Internet:Network|Computer เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้: คำ :=รายการใหม่ ต
สมมติว่าเรามีต้นไม้ไบนารีสองทรี เราต้องตรวจสอบลำดับของใบไม้จากซ้ายไปขวาในต้นไม้ทั้งสองต้นว่าเหมือนกันหรือไม่ ดังนั้นหากอินพุตเป็นแบบ จากนั้นผลลัพธ์จะเป็น True เนื่องจากลำดับคือ [2, 6] สำหรับต้นไม้ทั้งสอง เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้: c :=รายการใหม่ กำหนดฟังก์ชัน inorder() สิ่งนี้
สมมติว่าเรามีรายการตัวเลขที่เรียกว่า nums ซึ่งแต่ละค่าเป็นตัวกำหนดหน่วยของเวลาที่ใช้ในการทำงานให้เสร็จ เราสามารถข้ามงานที่ไม่ต่อเนื่องกันได้ เราต้องหาเวลาขั้นต่ำที่ใช้ในการทำงานทั้งหมดให้เสร็จ ดังนั้น หากอินพุตเป็น nums =[11, 6, 8, 16] ผลลัพธ์จะเป็น 14 เนื่องจากเราสามารถข้ามงานแรกและงานสุดท้ายได้
สมมติว่าเรามีต้นไม้ไบนารี เราต้องหาความลึกของใบที่ลึกที่สุดเป็นอันดับสอง หากมีใบที่ลึกที่สุดหลายใบ โหนดที่ลึกที่สุดเป็นอันดับสองจะเป็นโหนดสูงสุดอันดับถัดไป อย่างที่ทราบกันดีว่ารูทมีความลึกเป็น 0 ดังนั้นหากอินพุตเป็นแบบ จากนั้นผลลัพธ์จะเป็น 1 เนื่องจากโหนดที่ลึกที่สุดอันดับสองคือ 3 เพื่อแก้ปัญหา
สมมติว่าเรามีรายการตัวเลขที่เรียกว่ารายการและค่าอื่น n พนักงานขายมีสินค้าในกระเป๋าพร้อมรหัสสุ่ม พนักงานขายสามารถลบรายการออกจากกระเป๋าได้มากถึง n รายการ เราต้องหาจำนวนขั้นต่ำของ ID ต่างๆ ในกระเป๋าหลังจากนำออกแล้ว n รายการ ดังนั้นหากอินพุตเป็นเหมือนรายการ =[2, 2, 6, 6] n =2 ผลลัพธ์จะเป็น 1 เนื่องจากเ
สมมติว่าเรามีรายการเชื่อมโยง เราต้องเรียงลำดับจากน้อยไปมาก ดังนั้น หากอินพุตเป็น [5, 8, 4, 1, 5, 6, 3] ผลลัพธ์จะเป็น [1, 3, 4, 5, 5, 6, 8, ] เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้: ค่า :=รายการใหม่ หัว :=โหนด ในขณะที่โหนดไม่เป็นโมฆะให้ทำ ใส่ค่าของโหนดที่ส่วนท้ายของค่า โหนด :=ถัดไปของโหนด จั
สมมติว่าเรามีแผ่นเมทริกซ์ 2 มิติ เราต้องพิมพ์องค์ประกอบเมทริกซ์ในลักษณะเกลียว ในตอนแรกเริ่มจากแถวแรก (mat[0, 0]) ให้พิมพ์เนื้อหาทั้งหมดแล้วตามด้วยคอลัมน์สุดท้ายเพื่อพิมพ์ จากนั้นจึงพิมพ์แถวสุดท้าย จากนั้นจึงพิมพ์องค์ประกอบในลักษณะเกลียว ดังนั้นหากอินพุตเป็นแบบ 7 10 9 2 9 1 6 2 3
สมมติว่าเรามีรายการตัวเลข A, B, C และ D สี่รายการ และยังมีเป้าหมายตัวเลขอีกรายการหนึ่งด้วย เราต้องหาจำนวนของดัชนีเฉพาะที่แตกต่างกัน i, j, k, l ที่ A[i] + B[j] + C[k] + D[l] ≤ เป้าหมาย ดังนั้นหากอินพุตเป็น A =[3, 2] B =[5, 3] C =[1] D =[2, 3] เป้าหมาย =9 ผลลัพธ์จะเป็น 3 ดังที่เราสามารถเลือกได้ดังต่อ
สมมติว่าเรามีรายการหมายเลขที่เรียกว่า nums และมันแสดงถึงความสูงของบล็อกสี่เหลี่ยม เราต้องตรวจสอบว่ารูปร่างนั้นสมมาตรเหนือเส้น y =x หรือไม่ ดังนั้น หากอินพุตเป็น nums =[7, 5, 3, 2, 2, 1, 1] ผลลัพธ์จะเป็น True เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้: ผม :=0 j :=ขนาดของ nums - 1 ในขณะที่ฉัน <=j
สมมติว่าเรามีรายชื่อห้องที่เรียกว่าห้อง แต่ละดัชนี i ในห้องแสดงถึงห้อง และห้อง[i] แสดงถึงคีย์ที่แตกต่างกันในการเปิดห้องอื่นๆ ห้อง 0 เปิดแล้วและเราอยู่ที่ห้องนั้นและห้องอื่น ๆ ทั้งหมดถูกล็อค เราสามารถย้ายได้อย่างอิสระระหว่างห้องที่เปิดอยู่ ต้องเช็คก่อนว่าเปิดทุกห้องหรือเปล่า ดังนั้น ถ้า input เหมือน