หน้าแรก
หน้าแรก
สร้างวิธีการย้อนกลับคำที่ใช้อาร์เรย์ถ่านเป็นอินพุตและสำหรับอักขระแต่ละตัวและทุกตัวจนกว่าจะถึงช่องว่างไม่ย้อนกลับคำ ในขั้นตอนสุดท้ายจะย้อนกลับสตริงทั้งหมดจากความยาว 0 ถึงความยาว n-1 ในขั้นตอนแรกสตริง นี่คือหนังสือของฉัน จะกลายเป็น koob ym si siht เมื่อสิ้นสุดขั้นตอนที่ 2 สตริงคำจะถูกเปลี่ยนกลับเป็น “
สร้างอาร์เรย์ใหม่ที่มีความยาว 256 ว่าง สำรวจผ่านอักขระสตริงทั้งหมดทีละอักขระ และเพิ่มค่าในอาร์เรย์ใหม่ ในตอนท้ายให้สำรวจทั้งอาร์เรย์และส่งคืนอักขระตัวแรกที่มีค่า 1 ตัวอย่างที่ 1 aabccd -→2 1 2 1 → คืนค่าอักขระตัวแรกที่มีการนับ 1 นั่นคือ b. ตัวอย่างที่ 2 using System; namespace ConsoleApplication{ &
สร้างอาร์เรย์ใหม่ที่มีความยาว 256 ว่าง สำรวจผ่านอักขระสตริงทั้งหมดทีละอักขระ และเพิ่มค่าในอาร์เรย์ใหม่ ในตอนท้ายให้สำรวจทั้งอาร์เรย์และส่งคืนอักขระตัวแรกที่มีค่า 1 ตัวอย่างที่ 1 aabccd -→2 1 2 1 → ส่งกลับอักขระตัวแรกที่มีการนับ 1 นั่นคือ b โดยการลบด้วยค่า ascii ตัวอย่างที่ 2 using System; namespace
มีสามวิธีตามที่เขียนไว้ด้านล่าง - ในวิธีแรก ใช้สูตร n(n+1)/2 ที่นับจำนวนองค์ประกอบแล้วต้องลบออกจากองค์ประกอบในอาร์เรย์ ในวิธีที่สอง สร้างอาร์เรย์ใหม่และสำรวจทั่วทั้งอาร์เรย์และทำให้ตัวเลขเป็นเท็จแล้วแต่จำนวนใดจะพบ ในวิธีที่สาม ใช้การดำเนินการ Xor ซึ่งให้หมายเลขที่หายไป ตัวอย่าง usin
เพื่อค้นหาหมายเลขที่หายไป สร้างอาร์เรย์ใหม่และสำรวจทั่วทั้งอาร์เรย์ และทำให้ตัวเลขเป็นจริงในอาร์เรย์ใหม่ หากพบตัวเลข เลื่อนผ่านอาร์เรย์ทั้งหมดและคืนค่าองค์ประกอบเท็จตัวแรกเป็นองค์ประกอบที่ขาดหายไป เพื่อค้นหาองค์ประกอบที่เกิดซ้ำ องค์ประกอบจริงตัวแรกจากอาร์เรย์ใหม่จะเป็นองค์ประกอบที่ซ้ำกัน ตัวอย่าง
เราสามารถเริ่มจากองค์ประกอบแรกและเรียกองค์ประกอบทั้งหมดที่สามารถเข้าถึงได้จากองค์ประกอบแรกซ้ำแล้วซ้ำอีก จำนวนการกระโดดขั้นต่ำเพื่อไปถึงจุดสิ้นสุดตั้งแต่แรกสามารถคำนวณได้โดยใช้จำนวนการกระโดดขั้นต่ำที่จำเป็นในการไปถึงจุดสิ้นสุดจากองค์ประกอบที่สามารถเข้าถึงได้ตั้งแต่แรก อาร์เรย์ =={1, 3, 6, 3, 2, 3, 6
ในเมทริกซ์ มีทั้งหมด n/2 สี่เหลี่ยมในเมทริกซ์ n*n และเราสามารถประมวลผลแต่ละตารางทีละอันโดยใช้การวนซ้ำที่ซ้อนกัน ในแต่ละองค์ประกอบสี่เหลี่ยมจะเคลื่อนที่เป็นวงจร 4 องค์ประกอบ เราสลับองค์ประกอบที่เกี่ยวข้องในทิศทางทวนเข็มนาฬิกาสำหรับแต่ละรอบ องค์ประกอบที่ตำแหน่ง (n-1-j,i) จะไปที่ตำแหน่ง(i,j) องค์ประก
เมทริกซ์ทั้งหมดจะต้องถูกหมุนจำนวน k ครั้ง ในเมทริกซ์ จะมีจำนวน n/2 สี่เหลี่ยมในเมทริกซ์ n*n และเราสามารถประมวลผลแต่ละตารางทีละอันโดยใช้การวนซ้ำที่ซ้อนกัน ในแต่ละช่องสี่เหลี่ยม องค์ประกอบเคลื่อนที่ในวงจรที่มีองค์ประกอบ 4 ส่วน จากนั้นเราจะสลับองค์ประกอบที่เกี่ยวข้องในทิศทางทวนเข็มนาฬิกาสำหรับแต่ละรอบ
ในการหมุนเมทริกซ์ในลำดับเกลียว เราต้องทำดังนี้จนกว่าจะครอบคลุมเมทริกซ์ภายในและเมทริกซ์ภายนอกทั้งหมด - ขั้นที่ 1 − ย้ายองค์ประกอบของแถวบนสุด ขั้นที่ 2 − ย้ายองค์ประกอบของคอลัมน์สุดท้าย ขั้นตอนที่ 3 − ย้ายองค์ประกอบของแถวล่าง ขั้นที่ 4 − ย้ายองค์ประกอบของคอลัมน์แรก ขั้นตอนที่ 5 − ทำซ
การสแกนเชิงเส้นในแผนที่กริด 2 มิติ หากโหนดมี 1 แสดงว่าโหนดรูทเป็นโหนดที่ทริกเกอร์การค้นหาในเชิงลึก ระหว่าง DFS ทุกโหนดที่เข้าชมควรตั้งค่าเป็น 0 เพื่อทำเครื่องหมายว่าเป็นโหนดที่เข้าชม นับจำนวนโหนดรูทที่ทริกเกอร์ DFS หมายเลขนี้จะเป็นจำนวนเกาะ เนื่องจาก DFS แต่ละรายการเริ่มต้นที่รูทบางตัวจะระบุเกาะ ตัว
สร้างฟังก์ชันหากำลังซึ่งใช้ตัวเลข x กับ n โดยที่ x คือ 2 และ n คือจำนวนครั้ง เราต้องทำการยกกำลัง ถ้าตัวเลขเป็นคู่ เราก็ต้องทำ x*x และถ้าตัวเลขเป็นเลขคี่ ให้คูณผลลัพธ์ด้วย x*x ทำการโทรซ้ำจนกว่า n จะกลายเป็น 0 สมมติว่าถ้าเรามีตัวเลข 2 และ 8 แล้ว 2*2*2*2*2*2*2*2 =256 ตัวอย่าง using System; namespace C
ค้นหาอักขระในตำแหน่งแรกและสลับอักขระที่เหลือกับอักขระตัวแรก เช่นเดียวกับใน ABC ในการวนซ้ำครั้งแรกจะมีการสร้างสามสตริง:ABC, BAC และ CBA โดยการสลับ A กับ A, B และ C ตามลำดับ ทำซ้ำขั้นตอนสำหรับอักขระที่เหลือ เช่น แก้ไขอักขระตัวที่สอง B เป็นต้น Nowswap อีกครั้งเพื่อกลับไปที่ตำแหน่งก่อนหน้า จาก ABC เราสร
ปัญหาสามารถแบ่งออกเป็น ปัญหาย่อย ที่เล็กกว่าและเรียบง่าย ซึ่งสามารถแบ่งออกเป็นปัญหาย่อยที่ง่ายกว่าและเล็กกว่าได้ เราใช้แต่ละหลักทีละตัวและนับ ndigits ทั้งหมดที่สามารถเข้าถึงได้จากหลักใด ๆ ใช้แผนที่เพื่อจัดเก็บการแมปของตัวเลขที่สามารถเข้าถึงได้จากทุกหลัก เมื่อตัวเลขกลายเป็น n หลัก ให้อัปเดตการนับ ตัว
ปัญหาผลรวมเป้าหมายคือปัญหาในการหาเซตย่อยโดยให้ผลรวมขององค์ประกอบเท่ากับจำนวนที่กำหนด วิธีการย้อนรอยสร้างการเปลี่ยนแปลงทั้งหมดในกรณีที่เลวร้ายที่สุด แต่โดยทั่วไปแล้ว ทำได้ดีกว่าวิธีการแบบเรียกซ้ำสำหรับปัญหาผลรวมเซตย่อย เซตย่อย A ของจำนวนเต็มบวก n จำนวนและให้ผลรวมของค่า หาว่ามีซับเซ็ตของเซตที่ระบุหรื
ปัญหาชุดย่อยที่แตกต่างกันทำให้เรามีชุดค่าผสมที่แตกต่างจากอาร์เรย์ที่กำหนด เมื่อเป้าหมายเป็น 2 จากนั้นจากอาร์เรย์ เราจะนำชุดค่าผสมทั้งหมดที่ตรงกับหมายเลข 2 เมื่อเป้าหมายเป็น 3 จากนั้นจากอาร์เรย์ เราจะนำชุดค่าผสมทั้งหมดที่สอดคล้องกับการนับ 3 ในตัวอย่างด้านล่าง อาร์เรย์คือ [ 1,2,3] และเป้าหมายคือ 2 ดั
สร้างรายการผลลัพธ์เพื่อจัดเก็บลำดับที่ถูกต้อง สร้างรายการปัจจุบันที่จะจัดเก็บลำดับปัจจุบันที่พบในเส้นทางของแผนผังการเรียกซ้ำ ฟังก์ชันย้อนรอยที่จะเข้าสู่การเรียกซ้ำจนกว่าเป้าหมายจะสำเร็จ มิฉะนั้น ควรย้อนย้อนไปยังเฟสก่อนหน้าเนื่องจากเป้าหมายมีค่าน้อยกว่า 0 ณ เวลาใด ๆ หากเป้าหมายกลายเป็น 0 ให้เพิ่มอาร์
สร้างรายการผลลัพธ์เพื่อจัดเก็บลำดับที่ถูกต้อง สร้างรายการปัจจุบันที่จะจัดเก็บลำดับปัจจุบันที่พบในเส้นทางของแผนผังการเรียกซ้ำ ฟังก์ชันย้อนรอยที่จะเข้าสู่การเรียกซ้ำจนกว่าเป้าหมายจะสำเร็จ มิฉะนั้น ควรย้อนย้อนไปยังเฟสก่อนหน้าเนื่องจากเป้าหมายมีค่าน้อยกว่า 0 ณ เวลาใด ๆ หากเป้าหมายกลายเป็น 0 ให้เพิ่มอาร์
สร้างฟังก์ชันย้อนกลับที่อัปเดตสตริงปัจจุบันหากวงเล็บเปิดน้อยกว่า n หรือวงเล็บปิดน้อยกว่าวงเล็บเปิด เมื่อความยาวของสตริงปัจจุบันเท่ากับ 2*n ให้เพิ่มลงในอาร์เรย์ผลลัพธ์แบบรวม สามารถติดตามได้โดยเก็บจำนวน { } ไว้ เราสามารถเริ่มวงเล็บเปิดได้ถ้าเรายังมีเหลือให้วาง และเราสามารถเริ่มวงเล็บปิดได้หากไม่เกินจำ
เราต้องทำให้อัศวินครอบคลุมทุกช่องของกระดานและมันสามารถย้ายไปยังเซลล์ได้เพียงครั้งเดียว มีสองวิธีในการจบการเคลื่อนไหวของอัศวิน - วิธีแรกซึ่งอัศวินคือหนึ่งอัศวินเคลื่อนออกจากห้องขังจากจุดเริ่มต้นเพื่อให้สามารถไปยังตำแหน่งจากจุดเริ่มต้นและสร้างลูปนี้เรียกว่าปิด ทัวร์ครั้งที่สองที่อัศวินเสร็จสิ้นที่อื่
ค้นหาดัชนีขององค์ประกอบกลาง (องค์ประกอบขั้นต่ำ) ใช้การค้นหาแบบไบนารีในอาร์เรย์ย่อยตามเงื่อนไขต่อไปนี้ - หากตัวเลขอยู่ระหว่างองค์ประกอบเริ่มต้นและองค์ประกอบที่ตำแหน่ง mid1 จากนั้นค้นหาตัวเลขในอาร์เรย์เริ่มต้นถึงกลางเดือนที่ 1 โดยใช้การค้นหาแบบไบนารี มิฉะนั้น หากตัวเลขอยู่ระหว่างองค์ประกอบกลา