เลือกหัวข้อจากแถบเมนูด้านซ้าย (กรณีหน้าจอเล็กเมนูจะหดกลายเป็นสัญลักษณ์สามขีดอยู่ในแถบเมนูด้านบน) หรือใส่คำค้นหาที่ช่องด้านล่างนี้ เพื่อค้นหาหัวข้อบทความหรือ Tutorial เกี่ยวกับเรื่อง sequence ที่ต้องการ
Iterators - ตัววงวนเป็นอ๊อบเจ็คที่มีจำนวนค่านับได้ - ตัววงวนเป็นอ๊อบเจคที่สามารถวนซ้ำได้ซึ่งหมายความว่านักเรียนสามารถข้ามผ่านค่าทั้งหมดได้ ในทางเทคนิคใน Python iterator เป็นอ๊อบเจ็คที่ใช้โปรโตคอล iterator ซึ่งประกอบด้วยเมธอด __iter __ () และ __ next __ () Iterator vs Iterable...
Read More →การเขียนโปรแกรมไม่ได้มีแค่เพียงการสร้างแอพพลิเคชันหรือการพัฒนาเว็บไซต์เท่านั้น แต่ยังเกี่ยวข้องกับการค้นหาแนวทางในการแก้ไขปัญหาหนักหน่วงทางการคำนวณ หนึ่งในวิธีการที่ทรงพลังและน่าตื่นเต้นที่ได้รับความนิยมก็คือ ?Dynamic Programming? หรือ DP ในภาษา C....
Read More →Dynamic Programming นิยมนำมาใช้แก้ปัญหาในหลากหลายสาขา เช่น การคำนวณทางเศรษฐศาสตร์, บริหารการผลิต, ปัญหาเส้นทางการเดินทาง (Traveling Salesman Problem - TSP), ปัญหา knapsack, ปัญหาการตัดสินใจทางธุรกิจ และอื่นๆ...
Read More →แนวคิดของ Memorization เป็นหนึ่งในกลยุทธ์ที่สำคัญในวงการการเขียนโปรแกรม เพื่อแก้ปัญหาที่คล้ายคลึงกันซ้ำๆ ด้วยการจำผลลัพธ์ของการคำนวณครั้งก่อนๆ เก็บไว้ใช้ต่อไป ลดเวลาที่สูญเสียไปกับการคำนวณซ้ำซากจำเจ และเพิ่มประสิทธิภาพของโปรแกรมได้อย่างมหาศาล...
Read More →Dynamic Programming (DP) เป็นหนึ่งในเทคนิคที่มีพลังในการแก้ปัญหาทางการคำนวณที่ซับซ้อนได้อย่างมีประสิทธิภาพ ซึ่งตัวมันเองก็คือการรักษาคำตอบของปัญหาย่อยเอาไว้ เพื่อการใช้งานซ้ำในภายหลัง นั่นหมายความว่า DP ช่วยลดการคำนวณซ้ำซึ่งเป็นสิ่งที่ไม่จำเป็น จึงการันตีได้ว่าความเร็วในการทำงานของโปรแกรมจะดีขึ้นอย่างมาก...
Read More →String Matching Algorithm เป็นหัวใจของการค้นหาภายในข้อความ. ไม่ว่าจะเป็นการค้นหาคำภายในหนังสือหรือการหา DNA sequence ที่ตรงกันภายใน genome มหาศาล, การเลือกใช้ algorithm ที่เหมาะสมกับงานคือกุญแจสำคัญที่จะช่วยให้การจัดการข้อมูลเป็นไปได้อย่างรวดเร็วและมีประสิทธิภาพ....
Read More →ในโลกยุคดิจิทัลที่ข้อมูลเพิ่มขึ้นอย่างก้าวกระโดดทุกวินาที การค้นหาข้อมูลแบบรวดเร็วและแม่นยำจึงเป็นสิ่งสำคัญมากยิ่งขึ้น ลองนึกถึงการค้นหาคำในหนังสือมหากาพย์ที่มีคำพูดมากมาย หรือค้นหาข้อมูลในฐานข้อมูลขนาดใหญ่ เราต้องอาศัยอะไรในการทำให้กระบวนการนี้สำเร็จลุล่วงอย่างเหมาะสม? คำตอบก็คือ String Matching Algorithm นั่นเอง...
Read More →ในการใช้งาน Dynamic Programming เราจะเห็นลักษณะสำคัญ 2 อย่างคือ Overlapping Subproblems และ Optimal Substructure. Overlapping Subproblems กล่าวถึงปัญหาย่อยที่ซ้ำกันบ่อยครั้งในการแก้ปัญหาโดยรวม ในขณะที่ Optimal Substructure หมายถึงการที่เราสามารถใช้คำตอบที่เหมาะสมที่สุดจากปัญหาย่อยมาสร้างคำตอบของปัญหาใหญ่ได้....
Read More →ในโลกแห่งการเขียนโปรแกรม ปัญหาที่ต้องการการคำนวณซ้ำๆ เป็นเรื่องปกติ ทว่าการทำงานซ้ำเช่นนี้อาจก่อให้เกิดประสิทธิภาพที่ต่ำ หากไม่มีการจัดการอย่างชาญฉลาด เทคนิคหนึ่งที่เข้ามามีบทบาทคือ Memorization ซึ่งที่ EPT เราได้สอนวิธีเขียนโปรแกรมที่มีการใช้งาน Memorization ในภาษา Perl เพื่อแก้ปัญหาการคำนวณที่ซับซ้อนและซ้ำซาก ซึ่งเป็นส่วนหนึ่งของขั้นตอนการพัฒนาโปรแกรมที่มีประสิทธิภาพมากขึ้น...
Read More →Dynamic Programming (DP) คือเทคนิคการเขียนโปรแกรมที่ใช้การแบ่งปัญหาใหญ่ออกเป็นปัญหาย่อยๆ ที่มีลักษณะซ้ำกันและจัดเก็บคำตอบเหล่านั้นเพื่อใช้ในการคำนวณภายหลัง นี่คือหัวใจสำคัญของการทำงานเชิงกลยุทธ์ที่ทำให้สามารถแก้ไขปัญหาที่มีความซับซ้อนได้ดีขึ้น...
Read More →ในโลกของการเขียนโปรแกรม หนึ่งในเทคนิคที่ช่วยในการประหยัดเวลาและทรัพยากรคอมพิวเตอร์คือการใช้ Memorization หรือ Memoization จะถูกใช้ในสังคมโปรแกรมเมอร์บ่อยครั้ง เพื่อหมายถึงการจดจำผลลัพธ์จากการคำนวณฟังก์ชันที่มีค่าเข้า (input) ที่เคยคำนวณไปแล้ว เพื่อนำกลับมาใช้ในครั้งต่อไปโดยไม่ต้องคำนวณใหม่ ซึ่งสามารถช่วยลดอัตราความซับซ้อนของแอลกอริธึม (Algorithmic Complexity) ได้อย่างมาก โดยเฉพาะกับฟังก์ชันที่มีระดับความซับซ้อนสูงโดยไม่จำเป็น...
Read More →สวัสดีค่ะ ชาวโปรแกรมเมอร์ที่รัก! หากคุณเป็นผู้ที่หลงใหลในโลกของการพัฒนาโปรแกรม คุณย่อมรู้ดีว่าการเขียนโค้ดที่มีประสิทธิภาพนั้นสำคัญเพียงใด วันนี้เราจะมาลองคุยกันถึงหัวข้อที่น่าสนใจไม่แพ้กันในโลกของการเขียนโปรแกรม นั่นคือ recursive function หรือ ฟังก์ชันเรียกตัวเอง โดยเฉพาะการใช้งานในภาษา Perl ซึ่งเป็นภาษาที่มีความสามารถทั้งในการเขียนสคริปต์และการประมวลผลข้อมูลที่หลากหลาย...
Read More →Memoization เป็นเทคนิคหนึ่งในการเขียนโปรแกรมที่ช่วยให้การคำนวณในโปรแกรมทำงานได้อย่างรวดเร็วและมีประสิทธิภาพโดยการเก็บผลลัพธ์ของการคำนวณที่มีการใช้ซ้ำๆไว้ เมื่อโปรแกรมต้องทำการคำนวณใดๆที่มีค่าเดิม โปรแกรมจะไม่คำนวณใหม่ แต่จะเรียกค่าที่เก็บไว้จากครั้งที่ผ่านมานั่นเอง นี่เป็นเหมือนกับการเก็บความทรงจำของโปรแกรมเพื่อใช้ประโยชน์ในอนาคต...
Read More →5 วิธีการเปลี่ยนโค้ด Java ฟังก์ชันนัลไปเป็น Kotlin ที่คุณควรรู้...
Read More →Python ได้รับการยกย่องว่าเป็นหนึ่งในภาษาโปรแกรมมิ่งที่มีความยืดหยุ่นและอำนวยความสะดวกให้กับนักพัฒนาซอฟต์แวร์ หนึ่งในไลบรารีที่สำคัญและมีประโยชน์อย่างมากสำหรับงานที่เกี่ยวข้องกับการทำงานซ้ำ ๆ คือ itertools. ไลบรารีนี้ให้ ชุดเครื่องมืออันมีพลังสำหรับการสร้างและจัดการ iterator หรือวัตถุที่เราสามารถเดินผ่านหรือ iterate ไปหา element ต่อ ๆ ไปใน sequence ได้ ในบทความนี้เราจะแนะนำ 5 itertools ที่นักพัฒนาควรรู้จักเพื่อใช้งานให้เกิดประโยชน์สูงสุดในการเขียนโค้ด Python ของตนเอง...
Read More →การเขียนโปรแกรมด้วยวิธีการแบบ recursive เป็นทักษะสำคัญที่จำเป็นต่อนักพัฒนาซอฟต์แวร์ หนึ่งในภาษาโปรแกรมมิ่งที่เก่าแก่แต่ยังคงได้รับการใช้งานคือ COBOL (Common Business Oriented Language) ซึ่งถูกพัฒนาขึ้นตั้งแต่ปี 1959 และยังคงถูกใช้อยู่ในหลายบริษัทและองค์กรใหญ่ โดยเฉพาะภาคธุรกิจและภาคการเงิน ซึ่งต้องการความเสถียรและความน่าเชื่อถือสูง...
Read More →หัวข้อ: การใช้งาน While Loop ในภาษา ABAP สำหรับพัฒนาการทำงานสมาร์ทๆ...
Read More →การเขียนโค้ดเป็นวิชาที่มีบทบาทสำคัญในโลกยุคดิจิตอล ใครที่มีความสามารถในการเขียนโปรแกรมได้คล่อง ย่อมเป็นทรัพยากรที่องค์กรให้ความสนใจสูงมาก หัวใจหลักของการเขียนคือการแก้ปัญหา และหนึ่งในเครื่องมือที่โปรแกรมเมอร์ควรจะเข้าใจได้ดีคือ Recursive Function วันนี้เราจะมารู้จักกับ recursive function ในภาษา Groovy ซึ่งเป็นภาษาดัดแปลงมาจาก Java แต่เต็มไปด้วยความคล่องตัวและสะดวกสบายมากกว่า พร้อมด้วยตัวอย่างโค้ด 3 ตัวอย่าง และการอธิบายการทำงานเพื่อให้เข้าใจอย่างลึกซึ้ง...
Read More →Longest Common Subsequence (LCS) คือ หัวข้อที่สำคัญในวิชาการเขียนโปรแกรมและเป็นส่วนหนึ่งของ Dynamic Programming ที่นักเรียนภาษา C และภาษาโปรแกรมอื่นๆ ควรศึกษา เพราะเป็นพื้นฐานที่สำคัญในการแก้ไขปัญหาที่ซับซ้อนต่างๆ เช่น การแก้ปัญหา diff ในระบบเวอร์ชันคอนโทรล, การเปรียบเทียบ DNA หรือการแปลภาษาที่จำเป็นต้องหาความเหมือนในลำดับของข้อมูลที่มีความยาวมหาศาล...
Read More →ในวงการคอมพิวเตอร์และการเขียนโปรแกรม การค้นหา longes palindrome ในสตริงเป็นปัญหาที่น่าสนใจและมีการใช้งานอย่างแพร่หลาย เช่น ในงานด้านวิทยาศาสตร์ข้อมูล, บทความด้านความปลอดภัยของข้อมูล หรือแม้แต่ในการพัฒนาเกม เพื่อทำความเข้าใจว่า palindrome คืออะไร มันคือสตริงที่อ่านจากหน้าไปหลังหรือจากหลังไปหน้าแล้วมีความหมายเหมือนกัน เช่น racecar หรือ level. การพัฒนาฟังก์ชั่นเพื่อจัดการกับปัญหานี้ในภาษา C สามารถช่วยให้คุณเข้าใจการใช้งานพื้นฐานของสตริงและการทำงานของฟังก์ชั่นต่างๆ ในภาษานี้...
Read More →บทความ: การใช้งาน return และ yield ในภาษา C...
Read More →การใช้ Longest Common Subsequence (LCS) ในภาษา C++ แบบง่ายๆ พร้อมตัวอย่างโค้ด...
Read More →ความลับของการเขียนโปรแกรมอย่างหนึ่งคือการสามารถนำเอาความรู้พื้นฐานไปประยุกต์ใช้ในการแก้ไขปัญหาได้อย่างหลากหลายและสวยงาม เช่นเดียวกับการเขียนฟังก์ชันที่ตรวจสอบว่าข้อความหรือตัวเลข (String หรือ Number) เป็น Palindrome หรือไม่ในภาษา C++ ซึ่ง Palindrome หมายถึงข้อความที่สามารถอ่านได้เหมือนกันทั้งจากหน้าไปหลังและจากหลังไปหน้า เช่น radar หรือ 12321 การตรวจสอบ Palindrome เป็นการฝึกฝนทักษะการเขียนโปรแกรมที่ดีและยังมี Use cases ที่น่าสนใจอีกมากมายในโลกจริง...
Read More →การเขียนโปรแกรมเป็นศาสตร์ทางคอมพิวเตอร์ที่ผู้พัฒนาต้องใช้ความรู้และทักษะเพื่อแก้ปัญหาที่หลากหลาย หนึ่งในปัญหาเหล่านั้นคือการหา Longest Common Subsequence (LCS) หรือ ลำดับย่อยร่วมที่ยาวที่สุดในภาษาการเขียนโปรแกรม วันนี้เราจะสำรวจวิธีการหา LCS ในภาษา Java ด้วยการนำเสนอตัวอย่างโค้ด 3 ตัวอย่าง พร้อมอธิบายการทำงาน และให้ยกตัวอย่าง usecase ในโลกจริง...
Read More →บทความ: การค้นหา Longest Palindrome ในสายอักขระ (String) ด้วย Java...
Read More →การเขียนโปรแกรมนั้นไม่ได้มีดีแค่การสร้างแอปพลิเคชันที่สวยงามเท่านั้น แต่ยังถือเป็นศิลปะของการแก้ปัญหาที่ซับซ้อนอีกด้วย เช่นเดียวกันกับการค้นหา Longest Common Subsequence (LCS) ในภาษา C# ซึ่งถือเป็นหัวใจสำคัญของการหาความคล้ายคลึงกันในหลายๆ สถานการณ์ เราจะมาดูกันว่า LCS คืออะไร และตัวอย่างของการประยุกต์ใช้งานในโลกจริง เพื่อให้คุณสามารถนำไปใช้พัฒนาความสามารถในการเขียนโค้ดของคุณได้อย่างไร้ขีดจำกัด!...
Read More →หัวเรื่อง: การสร้าง Catalang Number Generator ใน C#: เครื่องมือสำหรับนักพัฒนาและการประยุกต์ใช้งาน...
Read More →การศึกษาการเขียนโปรแกรมไม่ใช่เรื่องยาก ถ้าคุณได้เรียนรู้กับผู้เชี่ยวชาญจาก EPT! วันนี้เราจะพาทุกคนมารู้จักกับการใช้งานคำสั่ง return และ yield ในภาษา C# ทั้งสองคำสั่งนี้มีส่วนสำคัญในการคืนค่าจาก methods และสร้าง enumerable collections ที่ชาญฉลาด มาดูกันว่าตัวพวกเขาทำงานอย่างไรบ้าง และสามารถใช้ในโปรเจ็คจริงได้อย่างไร...
Read More →การค้นหาลำดับย่อยสามัญที่ยาวที่สุด (Longest Common Subsequence หรือ LCS) เป็นปัญหาที่น่าสนใจในวิชาการตลอดจนในการประยุกต์ใช้งานทางด้านอุตสาหกรรมซอฟต์แวร์ ซึ่งในภาษา VB.NET การเขียนโปรแกรมเพื่อค้นหา LCS สามารถทำได้ง่ายๆ ด้วยการใช้แนวคิดของอัลกอริทึมแบบไดนามิกโปรแกรมมิ่ง...
Read More →การใช้งาน Return กับ Yield ใน VB.NET แบบง่ายๆ พร้อมตัวอย่าง CODE และอธิบายการทำงาน และยกตัวอย่าง Use Case ในโลกจริง...
Read More →การหา Longest Common Subsequence (LCS) คือ หนึ่งในปัญหาคลาสสิกที่นักพัฒนาซอฟต์แวร์และนักวิจัยด้านการเขียนโปรแกรมต้องพบเจอ และมักจะถูกป้อนให้เป็นอาหารกับสมองในห้องเรียนและห้องปฏิบัติการทั่วโลก ซึ่งเราที่ EPT รู้ดีว่าการเรียนรู้ผ่านตัวอย่างโค้ดจะช่วยให้นักเรียนเข้าใจแนวคิดได้ดีที่สุด ในบทความนี้ เราจะพาทุกท่านไปสำรวจวิธีการใช้งาน LCS ในภาษา Python พร้อมโค้ดตัวอย่างที่ชัดเจน และสำรวจ Use Cases ในโลกจริงที่คุณอาจไม่เคยรู้มาก่อน...
Read More →การค้นหาลำดับย่อยร่วมที่ยาวที่สุด (Longest Common Subsequence - LCS) เป็นหัวข้อพื้นฐานที่น่าสนใจในวิชาคอมพิวเตอร์ ซึ่งมีการนำไปใช้ในหลายสาขา เช่น ชีวสารสนเทศศาสตร์, ภาษาศาสตร์คอมพิวเตอร์และการแก้ไขข้อผิดพลาดต่างๆ วันนี้เราจะมาดูวิธีการใช้ Longest Common Subsequence ในภาษา Golang แบบง่ายๆ พร้อมตัวอย่าง Code ที่ช่วยให้เข้าใจมากยิ่งขึ้น และยังจะพูดถึง use case ในโลกจริงที่เกี่ยวข้องกับ LCS อีกด้วย ซึ่งความรู้นี้สามารถนำไปต่อยอดได้หลากหลายและสำคัญสำหรับผู้ประกอบการและนักพัฒนาเว็บ และเมื่อคุณมองหาที่...
Read More →การพัฒนาโปรแกรมทางด้านคณิตศาสตร์นั้นเป็นหัวใจสำคัญของการเขียนโค้ดที่ต้องการการคำนวณและวิเคราะห์ที่ซับซ้อน เลขคาตาลัน (Catalan numbers) เป็นหนึ่งในลำดับเลขที่มีความสำคัญและปรากฏในหลากหลายปัญหาด้านคณิตศาสตร์และแพทเทิร์นของสาขาต่างๆ เช่น พีชคณิตคอมบิเนเตอร์, ทฤษฎีกราฟ, และเทคนิคการเข้ารหัสข้อมูล เราจะไปดูกันว่าเราสามารถประยุกต์ใช้ตัวสร้างลำดับเลขคาตาลัน หรือ Catalan number generator ได้อย่างไรในภาษา Go (หรือ Golang)...
Read More →การใช้งาน Longest Common Subsequence ในภาษา JavaScript...
Read More →บทความนี้จะพูดถึงหนึ่งในปัญหาที่น่าสนใจและพบเห็นได้บ่อยในวงการโปรแกรมมิ่งนั่นก็คือ Palindrome ซึ่งหมายถึงสายอักขระที่อ่านได้เหมือนกันทั้งจากหน้าไปหลังและจากหลังกลับมาหน้า เช่น radar หรือ level การตรวจสอบว่าสายอักขระเป็น Palindrome ในภาษา JavaScript สามารถทำได้ง่ายดาย และในบทความนี้เราจะแสดงตัวอย่างโค้ด 3 ตัวอย่างพร้อมทั้งอธิบายการทำงาน และยก use case ในโลกจริงเพื่อให้เห็นถึงการประยุกต์ใช้งานของPalindrome อย่างไรก็ตาม หลังจากเรียนรู้เรื่องนี้แล้ว หากคุณมีความสนใจในการเขียนโปรแกรมเพิ่มเติม ขอชวนเร...
Read More →บทความ: การใช้งาน Longest Common Subsequence (LCS) ในภาษา Perl...
Read More →ในโลกของการเขียนโปรแกรม หนึ่งในปัญหาคลาสสิกที่มักจะถูกนำมาใช้ทดสอบทักษะและความคิดสร้างสรรค์ของนักพัฒนาคือการตรวจสอบ palindrome. Palindrome คือคำ วลี หรือตัวเลขที่อ่านได้เหมือนกันทั้งจากหน้าไปหลังและจากหลังมาหน้า เช่น radar, level, 12321. การตรวจสอบ palindrome เป็นตัวอย่างที่ดีเกี่ยวกับการใช้งานสตริงและความคิดเชิงตรรกะในการเขียนโปรแกรม และ Perl เป็นภาษาที่มีเครื่องมือทรงพลังสำหรับการจัดการสตริง ซึ่งทำให้มันเป็นตัวเลือกที่ยอดเยี่ยมสำหรับการทำงานนี้ และนี่คือโอกาสที่ดีสำหรับการเรียนรู้ที่ EPT ด้วย!...
Read More →ในโลกของการเขียนโปรแกรม เทคนิคต่างๆมีความสำคัญอย่างมาก หนึ่งในเทคนิคที่มีประโยชน์และน่าสนใจคืออัลกอริทึม Longest Common Subsequence (LCS) ซึ่งเป็นวิธีการหาลำดับย่อยร่วมที่ยาวที่สุดระหว่างสองสายอักขระ ตัวอย่างเช่น ถ้าเรามีสายอักขระ ABCBDAB และ BDCAB นั้น LCS ของสองสายนี้อาจจะเป็น BCAB หรือ BDAB...
Read More →ในโลกของการเขียนโปรแกรม หนึ่งในปัญหาที่น่าสนใจและมีประโยชน์การใช้งานอยู่หลากหลายสถานการณ์คือ การหา Longest Common Subsequence (LCS) หรือ ลำดับร่วมที่ยาวที่สุด สำหรับภาษา Rust ที่เป็นภาษาที่มีความปลอดภัยและสามารถจัดการหน่วยความจำได้ดีเยี่ยม การใช้งาน LCS ในภาษานี้จะช่วยให้คุณลีลาไซท์ข้อมูลได้อย่างมีประสิทธิภาพ ซึ่งในบทความนี้ เราจะให้ข้อมูลเกี่ยวกับการทำงานของ LCS และตัวอย่างโค้ด 3 ตัวอย่างพร้อมอธิบายการทำงาน รวมถึงนำเสนอตัวอย่าง usecase ในโลกจริง...
Read More →สวัสดีครับ! ในโลกของการเขียนโปรแกรม เรามักพบกับปัญหาที่ท้าทายและมีความสวยงามทางคณิตศาสตร์ในเวลาเดียวกัน หนึ่งในปัญหาเหล่านั้นคือการค้นหาสตริง Palindrome ที่ยาวที่สุดภายในข้อความ สําหรับคนที่ยังไม่ทราบ Palindrome คือ สตริงที่สามารถอ่านจากหน้าไปหลังและจากหลังไปหน้าแล้วได้ผลเหมือนกัน เช่น radar หรือ level เป็นต้น ในบทความนี้ ผมจะอธิบายวิธีการใช้งาน Longest palindrome in string ในภาษา Rust โดยมีเป้าหมายเพื่อนำไปประยุกต์ใช้กับ usecase ในโลกจริง เพื่อความเข้าใจที่ดีขึ้น ผมจะรวมตัวอย่างโค้ดด้วย...
Read More →