29
ย้อนกลับสองส่วนของสตริงรอบเดือย
พื้นหลัง ขณะนี้ฉันอยู่ใน AP Comp Sci A: คลาส Java และฉันต้องการเริ่มเพื่อนบางคนของฉันเกี่ยวกับการตีกอล์ฟ ฉันมีความท้าทายจากหลักสูตรและฉันต้องการดูว่ามีกี่ไบต์ที่ชุมชนสามารถทำสิ่งนี้ได้ รายละเอียดการท้าทาย: กำหนดสตริงอินพุตสองสตริงคือสตริงหลักและสตริง pivot ให้ทำดังนี้: ถ้าสตริงเดือยเป็นสิ่งที่ครั้งหนึ่งเคยเป็น substring ของสตริงหลักส่วนหนึ่งของสตริงหลักที่มาก่อนสตริงเดือยจะต้องสลับกับส่วนหนึ่งที่เกิดขึ้นหลังจากที่ในขณะที่การรักษาสินค้าได้ภายใน subtrings กล่าวถูกเปลี่ยน ตัวอย่างเช่น: หากสตริงสาระสำคัญว่างเปล่าหรือไม่พบสตริงสาระสำคัญภายในสตริงหลักโปรแกรมไม่จำเป็นต้องกำหนดพฤติกรรมไว้ หากมีมากกว่าหนึ่งอินสแตนซ์ของสตริงเดือยการแยกควรเกิดขึ้นในอินสแตนซ์แรกและอินสแตนซ์แรกเท่านั้นของเดือย ตัวอย่าง: ให้สตริงหลักOneTwoThreeTwoOneและสตริงเดือยผลผลิตที่ควรจะเป็นTwoThreeTwoOneTwoOne ได้รับสตริงหลัก1Two2Two3Two4และหมุนเอาท์พุทที่ควรจะเป็นTwo2Two3Two4Two1 ได้รับสตริงหลักOneTwoThreeและสตริงเดือย "สอง" ThreeTwoOneเอาท์พุทที่ควรจะเป็น รับสายหลักthe rabbit is faster than the turtleและสายหมุน is faster than (หมายเหตุพื้นที่เดียวต่อท้ายและก่อนหน้านี้) the turtle is faster than the rabbitเอาท์พุทที่ควรจะเป็น ได้รับสตริงหลัก1-2-3-4-5-6และหมุนเอาท์พุทที่ควรจะเป็น-2-3-4-5-6-1 เล่ม: นี่เป็นคำถามแรกของฉันเกี่ยวกับการตีกอล์ฟดังนั้นถ้าคุณมีข้อเสนอแนะหรือคำวิจารณ์ที่สร้างสรรค์คุณสามารถพูดอย่างนั้นได้ นอกจากนี้รหัสของฉันสำหรับโครงการนี้ …