สตริงย้อนกลับใน C ++

String Yxn Klab Ni C



ในสถานการณ์การเขียนโปรแกรม C++ จำนวนมาก อาจจำเป็นต้องกลับสตริง การกลับสตริงเกี่ยวข้องกับการเปลี่ยนลำดับของอักขระในสตริงและตั้งค่าในลำดับย้อนกลับ หรืออาจเป็นเพียงการพิมพ์สตริงไปข้างหลัง สิ่งที่จำเป็นในการย้อนกลับสตริงคือการย้ายองค์ประกอบสุดท้ายไปยังตำแหน่งเริ่มต้นของสตริงเป็นต้น ในบางสถานการณ์ อาจจำเป็นต้องกลับสตริงที่อยู่อย่างถาวร C++ มีวิธีการต่างๆ ในการกลับสตริง

เทคนิคการย้อนกลับสตริงในการเขียนโปรแกรม C++

ขึ้นอยู่กับข้อกำหนดโค้ดที่เรากำลังพัฒนา มีเทคนิคหลายอย่างในการใช้การกลับสตริงในการเขียนโปรแกรม C++ เทคนิคเหล่านี้คือ:

  • ใช้วิธี 'reverse()'
  • ใช้วิธี “strrev()”
  • การใช้ลูป 'สำหรับ'
  • การใช้ลูป 'ในขณะที่'
  • การใช้ตัวสร้าง

ตัวอย่างที่ 1:

ขั้นแรก เรานำเข้าไฟล์ส่วนหัวที่แตกต่างกันสามไฟล์ ได้แก่ “อัลกอริทึม”, “iostream” และ “สตริง” เราจะต้องรวมไฟล์ส่วนหัวเหล่านี้เพื่อที่เราจะได้ใช้ฟังก์ชันที่กำหนดไว้ในไฟล์เหล่านั้น ไฟล์ส่วนหัว 'อัลกอริทึม' มีฟังก์ชันในตัวมากมายสำหรับการค้นหา การเรียงลำดับ การนับ การแก้ไข ฯลฯ ที่พร้อมใช้งานสำหรับเรา







จากนั้น “iostream” จัดเตรียมฟังก์ชันสำหรับการอินพุตหรือเอาต์พุตข้อมูล และไฟล์ส่วนหัว “string” จะรวมอยู่ด้วยเนื่องจากมีฟังก์ชันที่จำเป็นในขณะที่ทำงานกับข้อมูลสตริง ใต้ไฟล์ส่วนหัวเหล่านี้ เราจะเพิ่มเนมสเปซ “std” ที่นี่เราเรียกใช้ฟังก์ชัน 'main()'



จากนั้นเราวางประเภทข้อมูล 'string' และเริ่มต้น 'OriginalStr' ที่นี่ด้วยข้อมูลสตริงบางส่วน จากนั้นเราก็พิมพ์สตริงนั้น หลังจากนี้ เราใช้วิธี 'reverse()' ที่ช่วยในการกลับสตริง ในเมธอด 'reverse()' นี้ เราจะเพิ่ม 'begin()' และ 'end()' พร้อมด้วยตัวแปร 'OriginalStr' ตอนนี้ เรายังพิมพ์สตริงกลับด้านที่เราได้รับหลังจากใช้เมธอด 'reverse()'



รหัส 1:





#รวม <อัลกอริทึม>
#รวม
#รวม<สตริง>
โดยใช้ เนมสเปซ มาตรฐาน -
ภายใน หลัก - -
-
สตริงเดิมStr - 'การย้อนกลับสตริงในการเขียนโปรแกรม C ++' -
ศาล - “สายเดิม!” - สิ้นสุด -
ศาล - เดิมStr - สิ้นสุด - สิ้นสุด -
ย้อนกลับ - เดิมStr. เริ่ม - - ,ต้นฉบับStr. จบ - - - -
ศาล - “สายกลับด้าน!” - สิ้นสุด -
ศาล - เดิมStr -
กลับ 0 -
-

เอาท์พุท:
สตริงที่กลับด้านที่เราได้รับหลังจากใช้เมธอด 'reverse()' ในโค้ดของเราตอนนี้ได้รับการเรนเดอร์พร้อมกับสตริงต้นฉบับแล้ว



ตัวอย่างที่ 2:

เรารวมไฟล์ส่วนหัวก่อนแล้วจึงวาง 'namespace std' จากนั้นในเมธอด 'main()' เราจะเริ่มต้นอาร์เรย์อักขระโดยวางประเภทข้อมูล 'char' ด้วยชื่อตัวแปร 'Org_str' แล้วพิมพ์สตริงที่นี่ที่เราต้องการย้อนกลับ จากนั้น เราเรนเดอร์ 'Org_str' นี้ด้วยความช่วยเหลือของ 'cout'

ข้างใต้นี้ เราใช้เมธอด 'strrev()' เพื่อกลับสตริงและส่ง 'Org_str' เป็นพารามิเตอร์ในฟังก์ชันนี้ ตอนนี้ สตริงกลับด้านที่นี่ หลังจากนี้ เรายังเรนเดอร์สตริงที่กลับด้านด้วยความช่วยเหลือของ 'cout'

รหัส 2:

#รวม
#รวม
โดยใช้ เนมสเปซ มาตรฐาน -
ภายใน หลัก - -
-
ถ่าน Org_str - - - 'โปรแกรมย้อนกลับสตริง' -
ศาล - Org_str - สิ้นสุด - สิ้นสุด -
สเตรฟ - Org_str - -
ศาล - 'สตริงกลับด้าน' - สิ้นสุด -
ศาล - Org_str -
กลับ 0 -
-

เอาท์พุท:
ที่นี่ สตริงดั้งเดิมและสตริงที่กลับด้านที่เราได้รับจากการใช้วิธีการ “strrev()” ในโค้ดของเราจะถูกแสดงผล

ตัวอย่างที่ 3:

ในกรณีนี้ ไฟล์ส่วนหัวจะรวมอยู่ก่อนที่จะเพิ่ม “namespace std” จากนั้น 'main()' จะถูกเรียกใช้และเพิ่มตัวแปรสตริงด้วยชื่อ 'myOrgStr' และเริ่มต้นด้วยข้อมูลสตริง

หลังจากนี้ เรายังประกาศตัวแปร “int” “a” และเรนเดอร์สตริง “myOrgStr” โดยใช้ “cout” ด้านล่างนี้ เราใช้ลูป “for” โดยที่เราเริ่มต้นตัวแปร “a” ด้วย “myOrgStr.length() – 1” จากนั้นวางเงื่อนไขที่เป็น “a >= 0” และลดลงในค่าของ “a '. สิ่งนี้จะกลับรายการสตริงของเราและเก็บไว้ใน “myOrgStr[a]” และยังแสดงมันเมื่อเราวาง “myOrgStr[a]” ไว้ใน “cout”

รหัส 3:

#รวม
#รวม<สตริง>
โดยใช้ เนมสเปซ มาตรฐาน -
ภายใน หลัก - -
-
สตริง myOrgStr - 'สวัสดีชาวโลก!' -
ภายใน -
ศาล - myOrgStr - สิ้นสุด - สิ้นสุด -
ศาล - 'สตริงกลับด้าน' - 0 - - -
-
ศาล - myOrgStr - - -
-
กลับ 0 -
-

เอาท์พุท:
สิ่งนี้จะแสดงทั้งสตริงดั้งเดิมและสตริงที่กลับด้านที่เราได้รับผ่านโค้ดของเราโดยใช้วิธีวนซ้ำ 'for'

ตัวอย่างที่ 4:

ที่นี่ เรานำเข้าไฟล์ส่วนหัว “bits/stdc++.h” ดังนั้นเราจึงไม่จำเป็นต้องนำเข้าไฟล์ส่วนหัวอื่นๆ เนื่องจากไฟล์ส่วนหัวนี้มีคำจำกัดความของฟังก์ชันทั้งหมด จากนั้นเราพิมพ์ 'namespace std' ที่นี่ เราสร้างฟังก์ชันที่มีชื่อ “Rev()” โดยเราจะส่งผ่าน “string& myString” เป็นอาร์กิวเมนต์ของฟังก์ชันนี้ เราสร้างฟังก์ชันนี้ที่นี่เพื่อย้อนกลับสตริง

ในฟังก์ชันนี้ เราวางตัวแปร “S_len” ของประเภทข้อมูล “int” และเริ่มต้นด้วยฟังก์ชัน “length()” โดยการวาง “myString” ไว้ด้วยสิ่งนี้ จากนั้นเรามีตัวแปรอีกตัวหนึ่งซึ่งเป็นประเภทข้อมูล 'no' เป็น 'int' และเริ่มต้นด้วย 'S_len-1'

ข้างใต้นี้ มีการเริ่มต้นตัวแปรอีกตัวหนึ่งซึ่งมีชื่อว่า 'a' ของประเภทข้อมูล 'int' ที่นี่ เราใช้ลูป “ While()” และเพิ่ม “a <= no” เป็นเงื่อนไข จากนั้นเราใช้วิธี “swap()” วิธีการ 'swap()' นี้ช่วยในการสลับข้อมูลสตริง จากนั้นเริ่มต้น 'no' ด้วย 'no -1' นอกจากนี้เรายังเริ่มต้นด้วย 'a' ด้วย 'a+1'

จากนั้นเราจะเรียกใช้ 'main()' ที่นี่ซึ่งเราจะเริ่มต้นตัวแปร 'myString' ด้วยข้อมูลสตริงและพิมพ์สตริงนั้น หลังจากนี้ เราจะเรียกฟังก์ชัน “Rev()” ที่เราสร้างขึ้นในโค้ดนี้ และใส่ “myString” เป็นพารามิเตอร์ของฟังก์ชันนี้ ซึ่งจะกลับสตริง จากนั้นจึงแสดงสตริงที่กลับรายการ

รหัส 4:

#รวม
โดยใช้ เนมสเปซ มาตรฐาน -
เป็นโมฆะ สาธุคุณ - เชือก - myString -
-
ภายใน เอส_เลน - myString. ความยาว - - -
ภายใน เลขที่ - เอส_เลน - 1 -
ภายใน - 0 -
ในขณะที่ - - เลขที่ - -
แลกเปลี่ยน - myString - - ,myString - เลขที่ - - -
เลขที่ - เลขที่ - 1 -
- - 1 -
-

-
ภายใน หลัก - -
-
สตริง myString - “ฉันรักการเขียนโปรแกรม” -
ศาล - myString - สิ้นสุด -
ศาล - - \n สตริงกลับด้าน' - สิ้นสุด -
สาธุคุณ - myString - -
ศาล - myString -
กลับ 0 -
-

เอาท์พุท:
ที่นี่ เรานำเสนอทั้งสตริงดั้งเดิมและสตริงที่กลับด้านที่เราได้รับจากการใช้ลูป “ While()” และเมธอด “swap()” ภายในฟังก์ชันที่เราสร้างขึ้นในโค้ดของเรา

ตัวอย่างที่ 5:

เรานำเข้าไฟล์ส่วนหัว “bits/stdc++.h” พร้อมคำจำกัดความฟังก์ชันทั้งหมด ดังนั้นเราจึงไม่จำเป็นต้องนำเข้าไฟล์ส่วนหัวอื่นๆ ต่อไป เราป้อน 'namespace std' และเรียก 'main()' ที่นี่ จากนั้นเรามีตัวแปร 'data' ของประเภทข้อมูล 'string' และเริ่มต้นด้วยสตริงที่เราต้องการย้อนกลับ

เราเรนเดอร์สตริงต้นฉบับนี้ก่อนที่จะย้อนกลับโดยการวางตัวแปร 'data' ไว้ใน 'cout' ด้านล่างนี้ เราจะเริ่มต้นตัวแปรอีกตัวหนึ่งซึ่งก็คือ “revStr” ของประเภทข้อมูล “string” เดียวกัน จากนั้น เราใช้ 'rbegin()' และ 'rend()' ซึ่งเป็นตัววนซ้ำที่เราเพิ่มสำหรับการกลับสตริงที่นี่ ตอนนี้สตริงที่กลับรายการจะถูกบันทึกไว้ในตัวแปร 'revStr' ที่วางอยู่ใน 'cout' เพื่อพิมพ์สตริงที่กลับรายการที่นี่

รหัส 5:

#รวม
โดยใช้ เนมสเปซ มาตรฐาน -
ภายใน หลัก - -
-
ข้อมูลสตริง - 'C++ เป็นภาษาโปรแกรมที่ดีที่สุด' -
ศาล - ข้อมูล - สิ้นสุด - สิ้นสุด -
สตริง revStr - เชือก - ข้อมูล. rbegin - - , ข้อมูล. ทำให้ - - - -

ศาล - รอบรอบ - สิ้นสุด -
กลับ 0 -
-

เอาท์พุท:
สตริงที่เราเพิ่มลงในโค้ดจะแสดงผลที่นี่เป็นครั้งแรก จากนั้น สตริงที่กลับด้านที่เราได้รับโดยใช้ตัววนซ้ำจะแสดงดังต่อไปนี้:

บทสรุป

แนวคิด 'string Reverse' ในการเขียนโปรแกรม C++ ได้ถูกกล่าวถึงในบทความนี้ ซึ่งเราได้สำรวจเทคนิคต่างๆ มากมายสำหรับการกลับสตริง เราได้ศึกษาวิธีการทั้งหมดที่ช่วยย้อนกลับสตริงในภาษา C++ โดยละเอียด และย้อนกลับสตริงในโค้ด C++ ของเรา ในบทความนี้ เราได้แสดงสตริงดั้งเดิมและสตริงที่กลับรายการในโค้ดของเรา