Tagged: Problem Solving

Functional Programming #5 : Filter-Map-Reduce 2

Functional Programming #5 : Filter-Map-Reduce

เกริ่นนำ Filter-Map-Reduce เป็นฟังก์ชันช่วยในการทำงานของ List เหมือนกับ sum หรือ take เป็นต้น แต่ที่แยกออกมาต่างหากนั้น เพราะสามตัวนี้ทำงานสอดประสานกันได้เป็นอย่างดี และมีความสามารถสูงมาก ว่ากันว่ามีฟังก์ชันเพียงสามตัวนี้ ก็สามารถทดแทนฟังก์ชันที่ช่วยจัดการเกี่ยวกับ List ได้เกือบทั้งหมด  ฟังก์ชันทั้งสามนี้เป็นฟังก์ชันมีระดับด้วยกันทั้งสิ้น ทำให้มีความยืดหยุ่นสูง เรามาลองดูรายละเอียดกันครับ ฟังก์ชัน filter ฟังก์ชัน filter นั้นรับพารามิเตอร์สองตัวครับ ตัวแรกเป็นเงื่อนไข และตัวที่สองเป็น List อารมณ์เดียวกันกับ takeWhile ครับ การทำงานก็ไม่มีอะไรซับซ้อนครับ ไล่ list แต่ละตัว more »

Functional Programming #4 : List Processing 0

Functional Programming #4 : List Processing

เกริ่นนำ FP มี List เป็นของคู่กันเห็นได้จากภาษาที่ถือว่าเป็นบิดาของ FP เลยคือ LISP นั้น เอาแค่ชื่อก็ชัดเจนแล้วครับ LISP นั้นย่อมาจากคำว่า List Processing ซึ่งก็แปลตรงตัวว่าการประมวลผล List นั่นเองดังนั้นการประมวลผล List จึงถือเป็นส่วนหลักส่วนหนึ่งของ FP ในเนื้อหาของบทนี้จึงพูดคุยเกี่ยวกันการสร้าง List ตลอดจนฟังก์ชันที่เป็นตัวช่วยการจัดการ List รวมถึงแสดงให้ถึงการสร้างฟังก์ชันเหล่านี้อย่างง่าย เพื่อเป็นการฝึกฝนและเสริมความเข้าใจ ว่าแต่ว่า List คืออะไร List คือโครงสร้างข้อมูลแบบหนึ่งถ้านึกอะไรไม่ออกให้ตั้งต้นที่ Array ก่อน Array more »