โลโก้
ยูเนี่ยนพีเดีย
การสื่อสาร
ดาวน์โหลดได้จาก Google Play
ใหม่! ดาวน์โหลด ยูเนี่ยนพีเดีย บน Android ™ของคุณ!
ติดตั้ง
เร็วกว่าเบราว์เซอร์!
 

ไลบรารีแม่แบบมาตรฐาน

ดัชนี ไลบรารีแม่แบบมาตรฐาน

ลบรารีแม่แบบมาตรฐาน (Standard Template Library / STL) เป็นไลบรารีของภาษาซีพลัสพลัส ประกอบไปด้วยคลาสของขั้นตอนวิธี คอนเทนเนอร์ (โครงสร้างข้อมูลและชนิดข้อมูล) ฟังก์เตอร์ และ ตัววนซ้ำ ไลบรารีแม่แบบมาตรฐานของ ISO C++ ได้อ้างอิงตามไลบรารีแม่แบบมาตรฐานของ Silicon Graphics (SGI).

31 ความสัมพันธ์: ชนิดข้อมูลแบบบูลฟังก์ชันแฮชกองซ้อนการทำให้เกิดผลการเข้าถึงโดยสุ่มภาษาจาวาภาษาซีภาษาซีพลัสพลัสภาษาซีพลัสพลัส11ยูเนียนรายการ (โครงสร้างข้อมูล)รายการโยงอินเทอร์เน็ตอินเตอร์เซกชันฮิวเลตต์-แพคการ์ดขั้นตอนวิธีคลัง (โปรแกรม)คลาส (คอมพิวเตอร์)คู่อันดับคีย์ตารางแฮชต้นไม้ค้นหาแบบทวิภาคที่มีโครงสร้างปรับสมดุลเองได้แถวลำดับแถวลำดับแบบจับคู่แถวคอยแถวคอยลำดับความสำคัญแถวคอยสองหน้าโครงสร้างข้อมูลเวกเตอร์เซต (คณิตศาสตร์)เซต (โครงสร้างข้อมูล)

ชนิดข้อมูลแบบบูล

ในวิทยาการคอมพิวเตอร์ ชนิดข้อมูลแบบบูล (Boolean data type) หรือ ชนิดข้อมูลแบบตรรกะ เป็นชนิดข้อมูลแบบหนึ่ง เก็บค่าได้เพียง 2 ค่าคือ ค่าจริงและค่าเท็จ ใช้ในการเก็บค่าความจริงและดำเนินการแบบพีชคณิตบูลีน ชื่อบูลนี้มาจากจอร์จ บูลซึ่งได้นิยามระบบพีชคณิตบูลีนขึ้น.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและชนิดข้อมูลแบบบูล · ดูเพิ่มเติม »

ฟังก์ชันแฮช

ฟังก์ชันแฮชจับข้อความไปเป็นตัวเลขตั้งแต่ 0 ถึง 15 มีการชนกันของข้อความ "John Smith" และ "Sandra Dee" ที่ช่อง 02 ฟังก์ชันแฮช (hash function) คือวิธีการอย่างหนึ่งซึ่งทำให้ข้อมูลส่วนหนึ่งหรือทั้งหมด ให้กลายเป็นจำนวนเล็กๆ อันหนึ่งอย่างมีปฏิสัมพันธ์ ซึ่งจำนวนดังกล่าวเปรียบได้ว่าเป็น "ลายนิ้วมือ" ของข้อมูล ขั้นตอนวิธีของฟังก์ชันแฮชส่วนใหญ่จะเป็นการแบ่งย่อยข้อมูลและการผสมข้อมูลย่อยทั้งหมดเข้าด้วยกันเพื่อให้ได้ผลลัพธ์สุดท้าย ผลลัพธ์ดังกล่าวอาจเรียกว่า ผลบวกแฮช (hash sum) ค่าแฮช (hash value) รหัสแฮช (hash code) หรือเรียกว่า แฮช (hash) เฉยๆ ก็ได้ บ่อยครั้งที่การเอ่ยถึงแฮชจะหมายถึงฟังก์ชันแฮชโดยปริยาย ปกติแล้วฟังก์ชันแฮชจะทำงานผ่านดัชนีที่เก็บไว้ในตารางแฮชที่อยู่ในหน่วยความจำหรือแฟ้มข้อมูลชั่วคราว.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและฟังก์ชันแฮช · ดูเพิ่มเติม »

กองซ้อน

กองซ้อน หรือ สแต็ก หมายถึง แบบชนิดข้อมูลนามธรรมที่มีลักษณะการเรียงลำดับข้อมูล ในการเข้า-ออกในลักษณะเข้าก่อนออกทีหลัง FILO (First In Last Out) กล่าวคือข้อมูลที่เข้าใหม่ๆจะได้ออกก่อน คล้ายกองที่ทับถมซึ่งสิ่งที่เข้ามาใหม่จะอยู่ด้านบนๆ จึงเรียกว่า กองซ้อน (stack) กองซ้อนมีการดำเนินการพื้นฐานเพียง 3 อย่าง ได้แก่ push, pop และ top กองซ้อน โดยที่การ push คือการใส่ข้อมูลลงไปในกองซ้อน ซึ่งจะกระทำได้หากกองซ้อนยังว่างอยู่ หากไม่มีที่ว่างในกองซ้อนเหลืออยู่หรือกองซ้อนเต็ม กองซ้อนนั้นจะอยู่ในสภาวะล้นหรือมากเกินเก็บ (overflow) การ pop คือการนำข้อมูลออกจากส่วนบนสุดของกองซ้อน นอกจากนี้ การ pop จะเผยข้อมูลที่ถูกผิดอยู่ก่อนหน้า หรือทำให้กองซ้อนว่างได้ แต่ถ้ากองซ้อนนั้นว่างอยู่แล้ว การ pop จะทำให้อยู่ในสภาวะน้อยเกินเก็บ (underflow) (นั่นคือ ไม่มีข้อมูลให้นำออกแล้ว) การ top กองซ้อน จะดึงข้อมูลที่อยู่บนสุดและส่งค่านั้นให้ผู้ใช้โดยที่ไม่ได้ลบทิ้งไป การ top กองซ้อนอาจทำให้กองซ้อนอยู่ในสภาวะน้อยเกินเก็บได้เช่นกัน หากกองซ้อนว่างอยู่แล้ว กองซ้อนจึงเป็นวิธีการจัดการเข้า-ออกของข้อมูลอีกแบบหนึ่ง เป็นโครงสร้างข้อมูลที่นำมาใช้ในการทำงานของโปรแกรมคอมพิวเตอร์หลายประการ อาทิการสร้าง subroutine การเรียงลำดับนิพจน์ ฯลฯ.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและกองซ้อน · ดูเพิ่มเติม »

การทำให้เกิดผล

การทำให้เกิดผล (implementation) คือขั้นตอนต่อจากกระบวนการคิด,​ การวางแผน,​ การสร้างแบบจำลอง หรือการคิดขั้นตอนวิธี โดยประยุกต์สิ่งเหลานี้เพื่อการใช้งานจริง.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและการทำให้เกิดผล · ดูเพิ่มเติม »

การเข้าถึงโดยสุ่ม

การเข้าถึงโดยสุ่ม เปรียบเทียบกับการเข้าถึงเชิงเส้น ในวิทยาการคอมพิวเตอร์ การเข้าถึงโดยสุ่ม (random access) หรือ การเข้าถึงโดยตรง (direct access) คือความสามารถในการเข้าถึงข้อมูลในลำดับภายในเวลาที่เท่าๆกันสำหรับข้อมูลตัวใด ๆ ก็ตาม เวลาในการเข้าถึงข้อมูลนี้ไม่ขึ้นกับกับขนาดของลำดับด้วย ตัวอย่างของการเข้าถึงโดยสุ่มคือการอ่านข้อมูลจากแผ่นซีดี ซึ่งสามารถอ่านข้อมูลตำแหน่งใดๆได้ทันที การเข้าถึงข้อมูลที่ตรงกันข้ามกับการเข้าถึงโดยสุ่มคือการเข้าถึงเชิงเส้น ซึ่งข้อมูลที่อยู่ไกลกว่าจะเสียเวลาในการเข้าถึงข้อมูลมากกว่า ตัวอย่างเช่นการอ่านข้อมูลจากตลับเทป ซึ่งต้องมีกรอเทปไปยังตำแหน่งที่ต้องการอ่านข้อมูล สำหรับโครงสร้างข้อมูล ความสามารถในการเข้าถึงโดยสุ่มคือความสามารถในการเข้าถึงรายการได้ภายในเวลาคงที่ หรือ O(1) ซึ่งโครงสร้างข้อมูลที่เรียบง่ายที่สุดที่มีความสามารถนี้ก็คือแถวลำดับ โครงสร้างข้อมูลที่เหลือที่มีความสามารถนี้ โดยมากแล้วก็จะมาจากการดัดแปลงแถวลำดับ เช่น แถวลำดับพลวัต อย่างไรก็ตาม การมีความสามารถในการเข้าถึงโดยสุ่มก็ความหมายอีกนัยหนึ่งว่าที่อยู่ของหน่วยความจำต้องเรียงกันแบบมีแบบแผน ดังนั้นจึงทำให้โครงสร้างข้อมูลทั้งหลายที่มีความสามารถนี้ไม่สามารถเพิ่มข้อมูลกลางรายการได้อย่างมีประสิทธิภาพ บางโครงสร้างข้อมูลเช่นรายการโยงแลกความสามารถในการเข้าถึงแบบสุ่มด้วยความสามารถในการเพิ่มและลบข้อมูลกลางรายการแทน ความสามารถในการเข้าถึงโดยสุ่มมีความสำคัญมาก มีขั้นตอนวิธีมากมายที่ใช้ประโยชน์จากโครงสร้างข้อมูลที่มีการเข้าถึงข้อมูลโดยสุ่ม เช่น การค้นหาแบบทวิภาค ขั้นตอนวิธีการเรียงลำดับ ตะแกรงเอราทอสเทนีส เป็นต้น.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและการเข้าถึงโดยสุ่ม · ดูเพิ่มเติม »

ภาษาจาวา

ลโก้ของภาษาจาวา ภาษาจาวา (Java programming language) เป็นภาษาโปรแกรมเชิงวัตถุ (Object Oriented Programming) พัฒนาโดย เจมส์ กอสลิง และวิศวกรคนอื่นๆ ที่ ซัน ไมโครซิสเต็มส์ ภาษาจาวาถูกพัฒนาขึ้นในปี พ.ศ. 2534 (ค.ศ. 1991) โดยเป็นส่วนหนึ่งของ โครงการกรีน (the Green Project) และสำเร็จออกสู่สาธารณะในปี พ.ศ. 2538 (ค.ศ. 1995) ซึ่งภาษานี้มีจุดประสงค์เพื่อใช้แทนภาษาซีพลัสพลัส (C++) โดยรูปแบบที่เพิ่มเติมขึ้นคล้ายกับภาษาอ็อบเจกต์ทีฟซี (Objective-C) แต่เดิมภาษานี้เรียกว่า ภาษาโอ๊ก (Oak) ซึ่งตั้งชื่อตามต้นโอ๊กใกล้ที่ทำงานของ เจมส์ กอสลิง แต่ว่ามีปัญหาทางลิขสิทธิ์ จึงเปลี่ยนไปใช้ชื่อ "จาวา" ซึ่งเป็นชื่อกาแฟแทน และแม้ว่าจะมีชื่อคล้ายกัน แต่ภาษาจาวาไม่มีความเกี่ยวข้องใด ๆ กับภาษาจาวาสคริปต์ (JavaScript) ปัจจุบันมาตรฐานของภาษาจาวาดูแลโดย Java Community Process ซึ่งเป็นกระบวนการอย่างเป็นทางการ ที่อนุญาตให้ผู้ที่สนใจเข้าร่วมกำหนดความสามารถในจาวาแพลตฟอร์มได้.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและภาษาจาวา · ดูเพิ่มเติม »

ภาษาซี

ษาซี (C) เป็นภาษาโปรแกรมสำหรับวัตถุประสงค์ทั่วไป เริ่มพัฒนาขึ้นระหว่าง พ.ศ. 2512-2516 (ค.ศ. 1969-1973) โดยเดนนิส ริชชี่ (Denis Retchie) ที่เอทีแอนด์ทีเบลล์แล็บส์ (AT&T Bell Labs) ภาษาซีเป็นภาษาที่มีความยืดหยุ่นในการเขียนโปรแกรมและมีเครื่องมืออำนวยความสะดวกสำหรับการเขียนโปรแกรมเชิงโครงสร้างและอนุญาตให้มีขอบข่ายตัวแปร (scope) และการเรียกซ้ำ (recursion) ในขณะที่ระบบชนิดตัวแปรอพลวัตก็ช่วยป้องกันการดำเนินการที่ไม่ตั้งใจหลายอย่าง เหมือนกับภาษาโปรแกรมเชิงคำสั่งส่วนใหญ่ในแบบแผนของภาษาอัลกอล การออกแบบของภาษาซีมีคอนสตรักต์ (construct) ที่โยงกับชุดคำสั่งเครื่องทั่วไปได้อย่างพอเพียง จึงทำให้ยังมีการใช้ในโปรแกรมประยุกต์ซึ่งแต่ก่อนลงรหัสเป็นภาษาแอสเซมบลี คือซอฟต์แวร์ระบบอันโดดเด่นอย่างระบบปฏิบัติการคอมพิวเตอร์ ยูนิกซ์ ภาษาซีเป็นภาษาโปรแกรมหนึ่งที่ใช้กันอย่างแพร่หลายมากที่สุดตลอดกาล และตัวแปลโปรแกรมของภาษาซีมีให้ใช้งานได้สำหรับสถาปัตยกรรมคอมพิวเตอร์และระบบปฏิบัติการต่าง ๆ เป็นส่วนมาก ภาษาหลายภาษาในยุคหลังได้หยิบยืมภาษาซีไปใช้ทั้งทางตรงและทางอ้อม ตัวอย่างเช่น ภาษาดี ภาษาโก ภาษารัสต์ ภาษาจาวา จาวาสคริปต์ ภาษาลิมโบ ภาษาแอลพีซี ภาษาซีชาร์ป ภาษาอ็อบเจกทีฟ-ซี ภาษาเพิร์ล ภาษาพีเอชพี ภาษาไพทอน ภาษาเวอริล็อก (ภาษาพรรณนาฮาร์ดแวร์) และซีเชลล์ของยูนิกซ์ ภาษาเหล่านี้ได้ดึงโครงสร้างการควบคุมและคุณลักษณะพื้นฐานอื่น ๆ มาจากภาษาซี ส่วนใหญ่มีวากยสัมพันธ์คล้ายคลึงกับภาษาซีเป็นอย่างมากโดยรวม (ยกเว้นภาษาไพทอนที่ต่างออกไปอย่างสิ้นเชิง) และตั้งใจที่จะผสานนิพจน์และข้อความสั่งที่จำแนกได้ของวากยสัมพันธ์ของภาษาซี ด้วยระบบชนิดตัวแปร ตัวแบบข้อมูล และอรรถศาสตร์ที่อาจแตกต่างกันโดยมูลฐาน ภาษาซีพลัสพลัสและภาษาอ็อบเจกทีฟ-ซีเดิมเกิดขึ้นในฐานะตัวแปลโปรแกรมที่สร้างรหัสภาษาซี ปัจจุบันภาษาซีพลัสพลัสแทบจะเป็นเซตใหญ่ของภาษาซี ในขณะที่ภาษาอ็อบเจกทีฟ-ซีก็เป็นเซตใหญ่อันเคร่งครัดของภาษาซี ก่อนที่จะมีมาตรฐานภาษาซีอย่างเป็นทางการ ผู้ใช้และผู้พัฒนาต่างก็เชื่อถือในข้อกำหนดอย่างไม่เป็นทางการในหนังสือที่เขียนโดยเดนนิส ริตชี และไบรอัน เคอร์นิกัน (Brian Kernighan) ภาษาซีรุ่นนั้นจึงเรียกกันโดยทั่วไปว่า ภาษาเคแอนด์อาร์ซี (K&R C) ต่อม..

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและภาษาซี · ดูเพิ่มเติม »

ภาษาซีพลัสพลัส

ษาซีพลัสพลัส (C++) เป็นภาษาโปรแกรมคอมพิวเตอร์อเนกประสงค์ มีโครงสร้างภาษาที่มีการจัดชนิดข้อมูลแบบสแตติก (statically typed) และสนับสนุนรูปแบบการเขียนโปรแกรมที่หลากหลาย (multi-paradigm language) ได้แก่ การโปรแกรมเชิงกระบวนคำสั่ง, การนิยามข้อมูล, การโปรแกรมเชิงวัตถุ, และการโปรแกรมแบบเจเนริก (generic programming) ภาษาซีพลัสพลัสเป็นภาษาโปรแกรมเชิงพาณิชย์ที่นิยมมากภาษาหนึ่งนับตั้งแต่ช่วงทศวรรษ 1990 เบียเนอ สเดราสดร็อบ (Bjarne Stroustrup) จากเบลล์แล็บส์ (Bell Labs) เป็นผู้พัฒนาภาษาซีพลัสพลัส (เดิมใช้ชื่อ "C with classes") ในปี ค.ศ. 1983 เพื่อพัฒนาภาษาซีดั้งเดิม สิ่งที่พัฒนาขึ้นเพิ่มเติมนั้นเริ่มจากการเพิ่มเติมการสร้างคลาสจากนั้นก็เพิ่มคุณสมบัติต่างๆ ตามมา ได้แก่ เวอร์ชวลฟังก์ชัน การโอเวอร์โหลดโอเปอเรเตอร์ การสืบทอดหลายสาย เทมเพลต และการจัดการเอกเซพชัน มาตรฐานของภาษาซีพลัสพลัสได้รับการรับรองในปี ค.ศ. 1998 เป็นมาตรฐาน ISO/IEC 14882:1998 เวอร์ชันล่าสุดคือเวอร์ชันในปี ค.ศ. 2014 ซึ่งเป็นมาตรฐาน ISO/IEC 14882:2014 (รู้จักกันในชื่อ C++14).

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและภาษาซีพลัสพลัส · ดูเพิ่มเติม »

ภาษาซีพลัสพลัส11

ษาซีพลัสพลัส11 (C++11) หรือชื่อเดิม ภาษาซีพลัสพลัสโอเอกซ์ (C++0x; โอ หมายถึงศูนย์) คือมาตรฐานภาษาซีพลัสพลัสฉบับที่มาแทนที่ภาษาซีพลัสพลัส03 (C++03) ได้รับอนุมัติจากองค์การระหว่างประเทศว่าด้วยการมาตรฐานเมื่อวันที่ 12 สิงหาคม..

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและภาษาซีพลัสพลัส11 · ดูเพิ่มเติม »

ยูเนียน

ูเนียน (union) หรือ ส่วนรวม คือการดำเนินการของเซต เป็นการสร้างเซตใหม่ซึ่งเป็นผลจากการรวมสมาชิกทั้งหมดของเซตต้นแบบเข้าด้วยกัน เขียนแทนด้วยสัญลักษณ์ (คล้ายอักษรตัวใหญ่ U).

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและยูเนียน · ดูเพิ่มเติม »

รายการ (โครงสร้างข้อมูล)

รายการ เป็นแบบชนิดข้อมูลนามธรรมประเภทหนึ่ง ซึ่งมีลักษณะการเรียงแบบต่อเนื่องไปเป็นลำดับ ข้อมูลจะมีลำดับก่อนหลังกันคล้ายเวกเตอร์ ตัวอย่างของรายการเช่น การเรียงลำดับตัวอักษร A,B,C,...

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและรายการ (โครงสร้างข้อมูล) · ดูเพิ่มเติม »

รายการโยง

รายการโยง เป็นรายการประเภทหนึ่ง ซึ่งจะใช้ประเภทข้อมูลประเภทโครงสร้าง วัตถุ หรือตัวชี้ (Pointer) เพื่อชี้สมาชิกตัวถัดไปที่เก็บไปเรื่อยๆ รายการโยงมีจุดเด่นทางด้านการเพิ่มหรือลดข้อมูลหรือชุดข้อมูลได้ง่าย จึงนำมาดัดแปลงในการสร้างโครงสร้างข้อมูลประเภทอื่นๆ เช่น กองซ้อน คิว ฯลฯ จึงนับว่าเป็นโครงสร้างข้อมูลที่ใช้บ่อยมากประเภทหนึ่ง.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและรายการโยง · ดูเพิ่มเติม »

อินเทอร์เน็ต

วิถีการจัดเส้นทางผ่านส่วนหนึ่งของอินเทอร์เน็ต อินเทอร์เน็ต (Internet) หมายถึง เครือข่ายคอมพิวเตอร์ที่มีขนาดใหญ่ มีการเชื่อมต่อระหว่างเครือข่ายหลาย ๆ เครือข่ายทั่วโลก โดยใช้ภาษาที่ใช้สื่อสารกันระหว่างคอมพิวเตอร์ที่เรียกว่า โพรโทคอล (protocol) ผู้ใช้เครือข่ายนี้สามารถสื่อสารถึงกันได้ในหลาย ๆ ทาง อาทิ อีเมล เว็บบอร์ด และสามารถสืบค้นข้อมูลและข่าวสารต่าง ๆ รวมทั้งคัดลอกแฟ้มข้อมูลและโปรแกรมมาใช้ได้.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและอินเทอร์เน็ต · ดูเพิ่มเติม »

อินเตอร์เซกชัน

อินเตอร์เซกชัน (intersection) หรือ ส่วนร่วม คือการดำเนินการของเซต เป็นการสร้างเซตใหม่ซึ่งเป็นผลจากการหาสมาชิกทั้งหมดที่เหมือนกันในเซตต้นแบบ เขียนแทนด้วยสัญลักษณ์ (คล้ายอักษรตัวใหญ่ U กลับหัว).

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและอินเตอร์เซกชัน · ดูเพิ่มเติม »

ฮิวเลตต์-แพคการ์ด

ริษัท ฮิวเลตต์-แพคการ์ด (Hewlett-Packard Company) หรือตัวย่อ เอชพี (HP) เป็นหนึ่งในบริษัทด้านเทคโนโลยีสารสนเทศขนาดใหญ่ของโลก มีสำนักงานใหญ่อยู่ที่เมืองพาโลอัลโต รัฐแคลิฟอร์เนีย สหรัฐอเมริกา ทำธุรกิจเกี่ยวกับคอมพิวเตอร์ เครื่องพิมพ์ การจัดการภาพดิจิทัล.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและฮิวเลตต์-แพคการ์ด · ดูเพิ่มเติม »

ขั้นตอนวิธี

ั้นตอนวิธี หรือ อัลกอริทึม (algorithm) หมายถึงกระบวนการแก้ปัญหาที่สามารถเข้าใจได้ มีลำดับหรือวิธีการในการแก้ไขปัญหาใดปัญหาหนึ่งอย่างเป็นขั้นเป็นตอนและชัดเจน เมื่อนำเข้าอะไร แล้วจะต้องได้ผลลัพธ์เช่นไร ซึ่งแตกต่างจากการแก้ปัญหาแบบสามัญสำนึก หรือฮิวริสติก (heuristic) โดยทั่วไป ขั้นตอนวิธี จะประกอบด้วย วิธีการเป็นขั้นๆ และมีส่วนที่ต้องทำแบบวนซ้ำ (iterate) หรือ เวียนเกิด (recursive) โดยใช้ตรรกะ (logic) และ/หรือ ในการเปรียบเทียบ (comparison) ในขั้นตอนต่างๆ จนกระทั่งเสร็จสิ้นการทำงาน ในการทำงานอย่างเดียวกัน เราอาจจะเลือกขั้นตอนวิธีที่ต่างกันเพื่อแก้ปัญหาได้ โดยที่ผลลัพธ์ที่ได้ในขั้นสุดท้ายจะออกมาเหมือนกันหรือไม่ก็ได้ และจะมีความแตกต่าง ที่จำนวนและชุดคำสั่งที่ใช้ต่างกันซึ่งส่งผลให้ เวลา (time), และขนาดหน่วยความจำ (space) ที่ต้องการต่างกัน หรือเรียกได้อีกอย่างว่ามีความซับซ้อน (complexity) ต่างกัน การนำขั้นตอนวิธีไปใช้ ไม่จำกัดเฉพาะการเขียนโปรแกรมคอมพิวเตอร์ แต่สามารถใช้กับปัญหาอื่น ๆ ได้เช่น การออกแบบวงจรไฟฟ้า, การทำงานเครื่องจักรกล, หรือแม้กระทั่งปัญหาในธรรมชาติ เช่น วิธีของสมองมนุษย์ในการคิดเลข หรือวิธีการขนอาหารของแมลง หนึ่งในขั้นตอนวิธีอย่างง่าย คือ ขั้นตอนวิธีที่ใช้หาจำนวนที่มีค่ามากที่สุดในรายการ (ซึ่งไม่ได้เรียงลำดับไว้) ในการแก้ปัญหานี้ เราจะต้องดูจำนวนทุกจำนวนในรายการ ซึ่งมีขั้นตอนวิธีดังนี้.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและขั้นตอนวิธี · ดูเพิ่มเติม »

คลัง (โปรแกรม)

ตัวอย่างแผนภาพแสดงการเรียกใช้งานไลบรารีของโปรแกรมเล่นสื่อผสมประเภท Ogg Vorbis คลังโปรแกรม หรือ ไลบรารี (library) ในทางวิทยาการคอมพิวเตอร์ คือส่วนที่รวบรวมกระบวนการ (process) และฟังก์ชันย่อย (subroutine) ต่าง ๆ ซึ่งอาจจะรวมซอร์สโค้ดหรือไม่ก็ได้ ที่จำเป็นต้องใช้ในการเขียนซอฟต์แวร์หรือใช้ในการทำงานของโปรแกรมหนึ่ง.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและคลัง (โปรแกรม) · ดูเพิ่มเติม »

คลาส (คอมพิวเตอร์)

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

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและคลาส (คอมพิวเตอร์) · ดูเพิ่มเติม »

คู่อันดับ

ในคณิตศาสตร์ คู่อันดับ (a, b) เป็นคู่ของวัตถุทางคณิตศาสตร์ โดย a เรียกว่า สมาชิกตัวหน้า และ b เรียกว่า สมาชิกตัวหลัง คู่อันดับอาจจะมองเป็นพิกัดก็ได้ สำหรับคู่อันดับนั้น อันดับมีความสำคัญ นั่นคือคู่อันดับ (a, b) แตกต่างจากคู่อันดับ (b, a) ยกเว้นกรณีที่ a.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและคู่อันดับ · ดูเพิ่มเติม »

คีย์

ีย์ อาจหมายถึง.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและคีย์ · ดูเพิ่มเติม »

ตารางแฮช

ตารางแฮช เป็นโครงสร้างข้อมูลในรูปแบบตาราง ซึ่งอาจใช้แถวลำดับในการทำ ใช้ในการเก็บข้อมูลจำนวนมาก เพื่อสะดวกต่อการเก็บและค้นหา โดยการผ่านฟังก์ชันแ.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและตารางแฮช · ดูเพิ่มเติม »

ต้นไม้ค้นหาแบบทวิภาคที่มีโครงสร้างปรับสมดุลเองได้

ตัวอย่างของต้นไม้ที่'''ไม่สมดุล''' ภาพต้นไม้เดียวกับภาพด้านบนแต่ปรับสมดุลแล้ว ในวิทยาการคอมพิวเตอร์ ต้นไม้ค้นหาแบบทวิภาคที่มีโครงสร้างปรับสมดุลเองได้ (self-balancing binary search tree) คือต้นไม้ค้นหาแบบทวิภาคที่สามารถรักษาความสูง (จำนวนชั้นที่อยู่ต่ำกว่าราก) ของตนให้เตี้ยอยู่ตลอดเวลาDonald Knuth.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและต้นไม้ค้นหาแบบทวิภาคที่มีโครงสร้างปรับสมดุลเองได้ · ดูเพิ่มเติม »

แถวลำดับ

ในวิทยาการคอมพิวเตอร์ แถวลำดับ (array) คือโครงสร้างข้อมูลที่เป็นรายการอย่างหนึ่ง ข้อมูล (value) จะถูกเก็บบนหน่วยความจำคอมพิวเตอร์ แบบอยู่ติดกันไปเรื่อย ๆ การเข้าถึงข้อมูลสามารถกระทำได้ผ่านดัชนี (index) หรืออาจเรียกว่า คีย์ โดยดัชนีจะเป็นจำนวนเต็มซึ่งบอกถึงลำดับที่ของข้อมูลในแถวลำดับ นอกจากนี้ ค่าของดัชนียังไปจับคู่กับที่อยู่หน่วยความจำ ผ่านสูตรคณิตศาสตร์ ทำให้สามารถเข้าถึงข้อมูลได้ ตัวอย่างเช่นแถวลำดับที่มีข้อมูล 10 ตัว โดยมีดัชนีตั้งแต่ 0 ถึง 9 สมมุติให้ข้อมูลแต่ละตัวใช้หน่วยความจำ 4 ไบต์ และแถวลำดับนี้มีที่อยู่ในหน่วยความจำคือ 2000 จะได้ว่าที่อยู่หน่วยความจำของข้อมูลตัวที่ i คือ 2000 + 4i แถวลำดับยังสามารถขยายมิติไปเป็นสองมิติหรือมากกว่านั้นได้ เนื่องจากรูปแบบของแถวลำดับสองมิติมีรูปร่างเป็นตาราง คล้ายกับเมตริกซ์ บางทีจึงอาจเรียกแถวลำดับสองมิติว่าเมตริกซ์หรือตาราง (สำหรับตารางโดยส่วนมากแล้วจะหมายความถึงตาราง lookup) เช่นเดียวกับแถวลำดับมิติเดียวที่บางครั้งก็อาจเรียกว่าเวกเตอร์หรือทูเพิล แถวลำดับถือได้ว่าเป็นโครงสร้างข้อมูลที่ถือกำเนิดขึ้นพร้อม ๆ กับการเขียนโปรแกรม และสำคัญมากในการเขียนโปรแกรมเช่นเดียวกัน และแทบจะไม่มีโปรแกรมใดเลยที่ไม่ใช้แถวลำดับ โดยแถวลำดับนี้ยังนำไปอิมพลีเมนต์โครงสร้างข้อมูลอื่นอีกมากมายเช่นรายการหรือสายอักขระ แม้แต่หน่วยเก็บข้อมูลที่มีที่อยู่หน่วยความจำก็อาจจะมองหน่วยเก็บข้อมูลเป็นแถวลำดับขนาดยักษ์ก็ได้.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและแถวลำดับ · ดูเพิ่มเติม »

แถวลำดับแบบจับคู่

แถวลำดับแบบจับคู่ (Associative array) หมายถึง กลุ่มโครงสร้างข้อมูลหรือแบบชนิดข้อมูลนามธรรม ที่สามารถเข้าถึงข้อมูลได้โดยผ่านข้อมูลอีกตัว เรียกว่า คีย์ (key) โดยเป็นการจับคู่คีย์เข้ากับค่าข้อมูล (value) เป็นคู่ๆไป ในภาษาโปรแกรมหลายภาษา แถวลำดับแบบจับคู่ ถือเป็นประเภทข้อมูลประเภทหนึ่งที่สำคัญมากและมีใช้หลากหลายรูปแบบ อาทิ ใช้ในการจัดการข้อมูลในฐานข้อมูล ใช้เป็นโครงสร้างข้อมูลเบื้องต้น เป็นต้น.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและแถวลำดับแบบจับคู่ · ดูเพิ่มเติม »

แถวคอย

แถวคอย หรือ คิว เป็นแบบชนิดข้อมูลนามธรรมที่มีลักษณะการเรียงลำดับข้อมูล การดำเนินการในแถวคอยจะแบ่งเป็น การเพิ่มข้อมูลไปที่ส่วนหลังสุดของแถวคอย และการดึงข้อมูลออกจากส่วนหน้าสุดของแถวคอย เข้าออกในลักษณะการเข้าก่อนออกก่อน (First In First Out: FIFO) ในโครงสร้างข้อมูลลักษณะเข้าก่อนออกก่อนนี้ ข้อมูลแรกสุดที่ถูกเพิ่มเข้าไปในแถวคอยจะเป็นข้อมูลแรกที่ถูกดึงออก ซึ่งก็เท่ากับว่า ความจำเป็นที่ว่า เมื่อมีข้อมูลหนึ่งถูกเพิ่มเข้ามาแล้ว ข้อมูลที่ถูกเพิ่มก่อนหน้านี้ทั้งหมดจะต้องถูกดึงออกก่อนที่ข้อมูลใหม่จะถูกใช้งาน คล้ายกับการเข้าแถวซื้อของในชีวิตประจำวัน แถวคอยจัดเป็นวิธีการจัดการเข้า-ออกของข้อมูลอีกแบบหนึ่ง เป็นโครงสร้างข้อมูลที่นำมาใช้ในการทำงานของโปรแกรมคอมพิวเตอร์หลายประการ อาทิแถวคอยในการทำงานของเครือข่าย การออกแบบการทำงานระบบท่อ (pipeline) เป็นต้น.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและแถวคอย · ดูเพิ่มเติม »

แถวคอยลำดับความสำคัญ

ในแถวคอยปกติ ข้อมูลที่เข้ามาก่อนจะมีสิทธิ์ออกก่อน (First In First Out:FIFO) อย่างไรก็ตาม มีบางครั้งที่เราต้องยกให้สมาชิกบางประเภทได้ทำงานก่อนทั้งที่มาทีหลัง เช่นการให้คิวงานที่เล็กกว่าได้ทำก่อน หรือ การให้สิทธิพิเศษแก่การทำงานบางประเภท เช่นนี้เราจะสร้าง แถวคอยลำดับความสำคัญ เป็นคิวที่ถึงแม้เข้าก่อน แต่สิ่งที่มีความสำคัญมากกว่าจะได้ออกก่อน ถ้ามีความสำคัญเท่ากัน ข้อมูลที่เข้ามาก่อนจะได้ออกก่อนเช่นเดียวกับแถวคอยปกติ แถวคอยลำดับความสำคัญทำให้เราสามารถประยุกต์ใช้คิวได้ดีขึ้น เนื่องจากเพิ่มการให้ความสำคัญของสมาชิกที่แตกต่างกัน ส่งผลให้เราสามารถจัดเรียงแถวคอยได้ใหม่ให้เหมาะสมกับการทำงานได้ เราใช้แถวคอยลำดับความสำคัญในการจัดการทำงาน การตรวจนับ ฯลฯ.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและแถวคอยลำดับความสำคัญ · ดูเพิ่มเติม »

แถวคอยสองหน้า

แถวคอยสองหน้า เป็นแบบชนิดข้อมูลนามธรรมที่เราสามารถนำข้อมูลแรกสุดหรือหลังสุดที่เราเพิ่มเข้าหรือออกก็ได้ เปรียบเสมือนเป็นแถวคอยที่มีหัวเปิดสองด้านให้เข้า-ออกได้ นั้นเอง แถวคอยสองหน้า สามารถประยุกต์ใช้ในแนวคิด กึ่งแถวคอยกึ่งกองซ้อนได้ ทำให้จัดการกับการเข้าออกของข้อมูลได้ทุกรูปแ.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและแถวคอยสองหน้า · ดูเพิ่มเติม »

โครงสร้างข้อมูล

ในสาขาวิทยาการคอมพิวเตอร์ โครงสร้างข้อมูล เป็นวิธีการจัดเก็บข้อมูลในคอมพิวเตอร์เพื่อให้สามารถใช้งานได้อย่างมีประสิทธิภาพ บ่อยครั้งที่การเลือกโครงสร้างข้อมูลที่เหมาะสมจะทำให้เราสามารถเลือกใช้ขั้นตอนวิธีที่มีประสิทธิภาพไปพร้อมกันได้ การเลือกโครงสร้างข้อมูลนั้นโดยส่วนใหญ่แล้วจะเริ่มต้นจากการเลือกแบบชนิดข้อมูลนามธรรม โครงสร้างข้อมูลที่ออกแบบเป็นอย่างดีจะสามารถรองรับการประมวลผลที่หนักหน่วงโดยใช้ทรัพยากรที่น้อยที่สุดเท่าที่จะเป็นไปได้ ทั้งในแง่ของเวลาและหน่วยความจำ โครงสร้างข้อมูลแต่ละแบบจะเหมาะสมกับงานที่แตกต่างกัน และโครงสร้างข้อมูลบางแบบก็ออกแบบมาสำหรับบางงานโดยเฉพาะ อย่างเช่น ต้นไม้แบบบีจะเหมาะสำหรับระบบงานฐานข้อมูล ในกระบวนการออกแบบโปรแกรมคอมพิวเตอร์ การเลือกโครงสร้างข้อมูลเป็นสิ่งสำคัญอันดับแรกที่ต้องคำนึงถึง ซึ่งจากการพัฒนาระบบงานใหญ่ๆได้แสดงให้เห็นว่า ความยากในการพัฒนาและประสิทธิภาพของระบบจะขึ้นอยู่กับโครงสร้างข้อมูลที่เลือกใช้อย่างมาก หลังจากตัดสินใจเลือกโครงสร้างข้อมูลที่จะใช้แล้วก็มักจะทราบถึงขั้นตอนวิธีที่ต้องใช้ได้ทันที แต่ในบางครั้งก็อาจจะกลับกัน คือ การประมวลผลที่สำคัญๆของโปรแกรมได้มีการใช้ขั้นตอนวิธีที่ต้องใช้โครงสร้างข้อมูลบางแบบโดยเฉพาะ จึงจะทำงานได้เต็มประสิทธิภาพ ถึงอย่างไรก็ตาม ไม่ว่าจะเลือกโครงสร้างข้อมูลด้วยวิธีการใด โครงสร้างข้อมูลที่เหมาะสมก็เป็นสิ่งที่สำคัญมากอยู่ดี แนวความคิดในเรื่องโครงสร้างข้อมูลนี้ส่งผล กับการพัฒนาวิธีการมาตรฐานต่างๆในการออกแบบและเขียนโปรแกรม หลายภาษาโปรแกรมนั้นได้พัฒนารวมเอาโครงสร้างข้อมูลนี้ไว้เป็นส่วนหนึ่งของระบบโปรแกรม เพื่อประโยชน์ในการใช้ซ้ำ.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและโครงสร้างข้อมูล · ดูเพิ่มเติม »

เวกเตอร์

แบบจำลองเวกเตอร์ในหลายทิศทาง เวกเตอร์ (vector) เป็นปริมาณในทางคณิตศาสตร์ ซึ่งมีลักษณะไม่เหมือนกับ สเกลาร์ ซึ่งเป็นจำนวนที่มีทิศทาง เวกเตอร์มีการใช้กันในหลายสาขานอกเหนือจากทางคณิตศาสตร์ โดยเฉพาะในทางวิทยาศาสตร์ฟิสิกส์ และเคมี เช่น การกระจั.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและเวกเตอร์ · ดูเพิ่มเติม »

เซต (คณิตศาสตร์)

อินเตอร์เซกชันของเซตสองเซต คือเซตที่ประกอบด้วยสมาชิกที่อยู่ในเซตทั้งสองเซต ดังแสดงในแผนภาพเวนน์ เซต ในทางคณิตศาสตร์นั้น อาจมองได้ว่าเป็นการรวบรวมกลุ่มวัตถุต่างๆ ไว้รวมกันทั้งชุด แม้ว่าความคิดนี้จะดูง่ายๆ แต่เซตเป็นแนวคิดที่เป็นรากฐานสำคัญที่สุดอย่างหนึ่งของคณิตศาสตร์สมัยใหม่ การศึกษาโครงสร้างเซตที่เป็นไปได้ ทฤษฎีเซตมีความสำคัญและได้รับความสนใจอย่างมากและกำลังดำเนินไปอย่างต่อเนื่อง มันถูกสร้างขึ้นมาตอนปลายคริสต์ศตวรรษที่ 19 ตอนนี้ทฤษฎีเซตเป็นส่วนที่ขาดไม่ได้ในการศึกษาคณิตศาสตร์ และถูกจัดไว้ในระบบการศึกษาตั้งแต่ระดับประถมศึกษาในหลายประเทศ ทฤษฎีเซตเป็นรากฐานของคณิตศาสตร์เกือบทุกแขนงซึ่งสามารถนำไปประยุกต์ใช้ได้.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและเซต (คณิตศาสตร์) · ดูเพิ่มเติม »

เซต (โครงสร้างข้อมูล)

ซต หมายถึงแบบชนิดข้อมูลนามธรรมที่ไม่อนุญาตให้ซ้ำกัน แต่ไม่เรียงลำดับสมาชิก เซตจึงถูกนำมาใช้ในการตรวจสอบความซ้ำกันของข้อมูล โครงสร้างข้อมูลที่เป็นเซต ได้แก่ ต้นไม้ค้นหาและตารางแฮช เพียงแต่ต้นไม้จะเก็บข้อมูลที่เปรียบเทียบได้ (Comparable) เท่านั้น ส่วนตารางแฮชไม่มีเงื่อนไขนี้.

ใหม่!!: ไลบรารีแม่แบบมาตรฐานและเซต (โครงสร้างข้อมูล) · ดูเพิ่มเติม »

ขาออกขาเข้า
Hey! เราอยู่ใน Facebook ตอนนี้! »