หน้าแรก
หน้าแรก
เราจะมาดูกันว่าเราจะหาจำนวนตัวหารร่วมของตัวเลขสองตัวได้อย่างไร เราจะไม่พบตัวหารร่วมทั้งหมด แต่เราจะนับว่ามีตัวหารร่วมทั้งหมดกี่ตัว หากตัวเลขสองตัวเช่น 12 และ 24 ตัวหารร่วมคือ 1, 2, 3, 4, 6, 12 ดังนั้นจึงมีตัวหารร่วม 6 ตัว ดังนั้นคำตอบจะเป็น 6 อัลกอริทึม countCommonDivisor(a, b) begin co
ที่นี่เราจะมาดูกันว่าเราจะได้รับ gcd ของตัวเลขมากกว่าสองตัวได้อย่างไร การหา gcd ของตัวเลขสองตัวนั้นง่าย เมื่อเราต้องการหา gcd ที่มากกว่าสองจำนวน เราต้องปฏิบัติตามกฎการเชื่อมโยงของ gcd ตัวอย่างเช่น หากเราต้องการหา gcd ของ {w, x, y, z} มันก็จะเท่ากับ {gcd(w,x), y, z} แล้ว {gcd(gcd(w,x), y) , z} และสุด
ในปัญหานี้ เราจะพยายามหาเลข K ที่เล็กที่สุด ซึ่งจะหารด้วย X ลงตัว เมื่อต้องการทำภารกิจนี้ เราจะใช้เลข K ที่น้อยที่สุดโดยใช้สูตรนี้ (10^(k-1)) แล้วตรวจดูว่าตัวเลขหารด้วย X ลงตัวหรือไม่ ถ้าไม่ เราจะได้จำนวนที่แน่นอนโดยใช้สูตรนี้ (min+ 𝑋)−((min+ 𝑋) 𝑚𝑜𝑑 𝑋) ตัวอย่างหนึ่งเหมือนกับตัวเลข 5 หลั
ในปัญหาเลขคณิตเข้ารหัสลับ ตัวอักษรบางตัวถูกใช้เพื่อกำหนดตัวเลข เช่นเดียวกับตัวอักษรสิบตัวที่แตกต่างกันถือค่าตัวเลขตั้งแต่ 0 ถึง 9 เพื่อดำเนินการคำนวณอย่างถูกต้อง มีคำให้สองคำและอีกคำหนึ่งเป็นคำตอบของการบวกสำหรับคำสองคำนั้น ตัวอย่างเช่น เราสามารถพูดได้ว่าสองคำคือ BASE และ BALL และผลลัพธ์คือ GAMES ตอน
ในปัญหานี้เราจะมาดูกันว่าเราจะหาผลรวมกำลังสองของจำนวนธรรมชาติ n ตัวแรกได้อย่างไร เราใช้ one for loop ที่รันตั้งแต่ 1 ถึง n ในแต่ละขั้นตอน เราจะคำนวณกำลังสองของเทอมนั้นแล้วบวกมันเข้ากับผลรวม โปรแกรมนี้ใช้เวลา O(n) ในการดำเนินการให้เสร็จสิ้น แต่ถ้าเราต้องการแก้ปัญหาใน O(1) หรือเวลาคงที่ เราก็สามารถใช้
ที่นี่เราจะดูว่าเราสามารถเชื่อมสตริง n จำนวนครั้งได้อย่างไร ค่าของ n ถูกกำหนดโดยผู้ใช้ ปัญหานี้ง่ายมาก ใน C ++ เราสามารถใช้ตัวดำเนินการ + สำหรับการต่อข้อมูล โปรดอ่านรหัสเพื่อรับแนวคิด อัลกอริทึม concatStrNTimes(str, n) begin res := empty string for i in range 1 to n, do &nb
ในการหาเสียงสระจากสตริง เราต้องวนซ้ำผ่านอักขระแต่ละตัวของสตริง ที่นี่เราต้องใช้พอยน์เตอร์เพื่อเลื่อนผ่านสตริง สำหรับสิ่งนี้เราต้องการสตริงสไตล์ C หากสตริงชี้ด้วย str ดังนั้น *str จะเก็บอักขระตัวแรกไว้ที่จุดเริ่มต้น จากนั้นถ้า str เพิ่มขึ้น *str จะชี้อักขระถัดไปเป็นต้น หากอักขระอยู่ใน [a,e,i,o,u] หรื
ที่นี่เราจะดูว่าเราสามารถหาผลรวมของซีรีส์ที่กำหนดได้อย่างไร ค่าของ n จะถูกกำหนดโดยผู้ใช้ เราสามารถแก้ปัญหานี้ได้โดยการสร้างฟังก์ชันแฟกทอเรียล และรับแฟคทอเรียลในแต่ละขั้นตอนในลูป แต่การคำนวณแบบแฟกทอเรียลนั้นมีค่าใช้จ่ายสูงกว่าการบวกปกติ เราจะใช้พจน์แฟกทอเรียลก่อนหน้าในเทอมถัดไป ชอบ 3! คือ (3 * 2 * 1)
ในส่วนนี้เราจะมาดูกันว่าเราสามารถอ่านเนื้อหาไฟล์แบบคำต่อคำโดยใช้ C++ ได้อย่างไร งานนี้ง่ายมาก เราต้องใช้สตรีมอินพุตไฟล์เพื่ออ่านเนื้อหาไฟล์ สตรีมไฟล์จะเปิดไฟล์โดยใช้ชื่อไฟล์ จากนั้นใช้ FileStream โหลดแต่ละคำและจัดเก็บไว้ในตัวแปรที่เรียกว่า word แล้วพิมพ์ทีละคำ อัลกอริทึม read_word_by_word(ชื่อไฟล์)
ที่นี่เราจะเห็นเคล็ดลับดีๆ ของภาษาการเขียนโปรแกรม C++ ที่สามารถช่วยเราได้ในด้านต่างๆ เช่นเดียวกับถ้าเราต้องการมีส่วนร่วมในกิจกรรมการเขียนโปรแกรมการแข่งขัน เทคนิคเหล่านี้จะช่วยให้เราลดเวลาในการเขียนโค้ดได้ เรามาดูตัวอย่างเหล่านี้กันทีละคน ตรวจสอบว่าตัวเลขเป็นเลขคี่หรือคู่โดยไม่ใช้ตัวดำเนินการ % เค
ที่นี่เราจะดูว่าผลรวมของ Aliquot คืออะไร? ผลรวม Aliquot ของ n คือผลรวมของตัวประกอบสมบูรณ์ทั้งหมดของ n ยกเว้น n ตัวอย่างเช่น หากตัวเลขคือ 20 ตัวประกอบสมบูรณ์คือ (1, 2, 4, 5, 10) ดังนั้นผลรวม Aliquot คือ 22 ข้อเท็จจริงที่น่าสนใจประการหนึ่งคือ หากผลรวม Aliquot ของตัวเลขคือตัวมันเอง ตัวเลขนั้นก็เป็นจำน
เราจะมาดูวิธีการพิมพ์เลขเฉพาะตัวสำรองทั้งหมดจนถึง N เลขเฉพาะตัวสำรองมีดังนี้ สมมติว่า N =15 ดังนั้นจำนวนเฉพาะจนถึง N คือ {2, 3, 5, 7, 11, 13} จำนวนเฉพาะสำรองคือ {2, 5, 11} มาดูกันว่าเราจะแก้ปัญหานี้ได้อย่างไร อัลกอริทึม printAlternatePrime(N) Begin define one Boolean array prime of size
ค่าเฉลี่ยเลขคณิตเป็นเพียงค่าเฉลี่ยของตัวเลข ในโปรแกรมนี้ เราจะมาดูกันว่าเราจะหาค่าเฉลี่ยเลขคณิตจากชุดตัวเลขได้อย่างไร ฟังก์ชันจะใช้ชุดตัวเลขและจำนวนองค์ประกอบ ภารกิจคือการเพิ่มแต่ละองค์ประกอบ แล้วหารด้วยจำนวนองค์ประกอบที่ส่งผ่าน อัลกอริทึม arithmeticMean(ชุดข้อมูล n) begin sum := 0 &nbs
เราจะเห็นวิธีการ asin() สำหรับจำนวนเชิงซ้อน สามารถใช้ตัวเลขเชิงซ้อนได้โดยใช้ไฟล์ส่วนหัวที่ซับซ้อน ในไฟล์ส่วนหัวนั้นมีฟังก์ชัน asin () อยู่ด้วย นี่เป็นเวอร์ชันที่ซับซ้อนของฟังก์ชัน asin () ปกติ ใช้เพื่อค้นหาไซน์อาร์กเชิงซ้อนของจำนวนเชิงซ้อน ฟังก์ชันนี้ใช้จำนวนเชิงซ้อนเป็นพารามิเตอร์อินพุต และส่งกลับ
เราจะเห็นวิธีการ atan() สำหรับจำนวนเชิงซ้อน สามารถใช้ตัวเลขเชิงซ้อนได้โดยใช้ไฟล์ส่วนหัวที่ซับซ้อน ในไฟล์ส่วนหัวนั้นมีฟังก์ชัน atan() อยู่ด้วย นี่เป็นเวอร์ชันที่ซับซ้อนของฟังก์ชัน atan() ปกติ ใช้เพื่อค้นหา arc tan เชิงซ้อนของจำนวนเชิงซ้อน ฟังก์ชันนี้ใช้จำนวนเชิงซ้อนเป็นพารามิเตอร์อินพุต และคืนค่า ar
การข้ามผ่านแบบ Breadth First Search (BFS) เป็นอัลกอริธึม ซึ่งใช้เพื่อเยี่ยมชมโหนดทั้งหมดของกราฟที่กำหนด ในอัลกอริธึมการข้ามผ่านนี้ โหนดจะถูกเลือกหนึ่งโหนด จากนั้นโหนดที่อยู่ติดกันทั้งหมดจะถูกเข้าชมทีละโหนด หลังจากเสร็จสิ้นจุดยอดที่อยู่ติดกันทั้งหมดแล้ว มันจะเคลื่อนที่ต่อไปเพื่อตรวจสอบจุดยอดอื่นและตร
ที่นี่เราจะเห็นห้าวิธีในการรับความยาวสตริงใน C ++ ใน C++ เราสามารถใช้สตริงอาร์เรย์อักขระดั้งเดิม และ C++ มีคลาสสตริงด้วย ในพื้นที่ต่างๆ มีวิธีการต่างๆ ในการคำนวณความยาวของสตริง คลาส C++ String มีฟังก์ชัน length() และ size() สามารถใช้เพื่อรับความยาวของวัตถุประเภทสตริง เพื่อให้ได้ความยาวของสตริง C ดั
ประเภทค็อกเทลเป็นอีกรูปแบบหนึ่งของการเรียงลำดับฟอง ในเทคนิคการจัดเรียงแบบฟองอากาศ ค้นหาจากซ้ายไปขวาเสมอ และพบองค์ประกอบที่ใหญ่ที่สุดที่ส่วนท้าย ในขั้นตอนที่สอง ค้นหาองค์ประกอบที่ใหญ่เป็นอันดับสองที่ตำแหน่งสุดท้ายที่สอง เทคนิคการเรียงลำดับนี้จะข้ามไปทั้งสองทิศทางหรือ ให้เราดูอัลกอริธึมเพื่อทำความเข้า
แนวคิดพื้นฐานของการเรียงหวีและการเรียงลำดับฟองนั้นเหมือนกัน กล่าวอีกนัยหนึ่งการจัดเรียงหวีเป็นการปรับปรุงการเรียงลำดับแบบฟอง ในเทคนิคการคัดแยกแบบฟองอากาศ รายการจะถูกเปรียบเทียบกับรายการถัดไปในแต่ละเฟส แต่สำหรับการจัดเรียงหวี รายการจะถูกจัดเรียงในช่องว่างเฉพาะ หลังจากเสร็จสิ้นแต่ละขั้นตอน ช่องว่างจะล
ที่นี่เราจะดูว่าการเรียงลำดับของ gnome ทำงานอย่างไร นี่เป็นอัลกอริธึมการเรียงลำดับอื่น ในแนวทางนี้ หากเรียงลำดับรายการแล้ว จะต้องใช้เวลา O(n) ดังนั้นความซับซ้อนของเวลากรณีที่ดีที่สุดคือ O(n) แต่ความซับซ้อนของกรณีเฉลี่ยและกรณีที่เลวร้ายที่สุดคือ O(n^2) ตอนนี้ให้เราดูอัลกอริทึมเพื่อรับแนวคิดเกี่ยวกับเ