วันอาทิตย์ที่ 26 กรกฎาคม พ.ศ. 2552

DTS04-14-07-2552

โครงสร้างข้อมูลแบบเซ็ต คือ เป็นโครงสร้างข้อมูลที่ข้อมูลแต่ละตัวไม่มีความสัมพันธ์กัน
ในภาษาซี แต่สามารถใช้หลักการของการดำเนินงานแบบเซ็ตมาใช้ได้ตัวดำเนินการของเซ็ต
(Set operators)
ประกอบด้วย
- set intersection
- set union
- set difference (ความแตกต่าง)
สตริง (String) หรือ สตริงของอักขระ (Character String)
เป็นข้อมูลที่ประกอบไปด้วย ตัวอักษร ตัวเลขหรือเครื่องหมายเรียงติดต่อกันไป รวมทั้งช่องว่างสติง
สตริง (String) เป็นข้อมูลที่ประกอบไปด้วย ตัวอักษร ตัวเลขหรือเครื่องหมายเรียงติดต่อกันไป
รวมทั้งช่องว่างการกำหนดสตริงเราทำได้หลายแบบ ดังนี้
1.กำหนดเป็นสตริงที่มีค่าคงตัว คือ กำหนดได้ทั้งนอกและในฟังก์ชั่นกำหนดไว้นอกฟังก์ชัน
ชื่อค่าคงตัวจะเป็นพอยเตอร์ชี้ไปยังหน่วยความจำที่เก็บสตริงนั้น เมื่อกำหนดไว้ในฟังก์ชัน
จะเป็นพอยเตอร์ไปยังหน่วยความจำที่เก็บตัวมันเอง
2.กำหนดโดยใช้ตัวแปรอะเรย์หรือพอยเตอร์การกำหนดค่าตัวแปรสตริง
ให้แก่ตัวแปรพอยเตอร์และอเรย์ คือ สามารถกำหนดค่าคงตัวสตริงให้พอยเตอร์หรืออเรย์
ได้ในฐานะค่าเริ่มต้นการกำหนดตัวแปรสตริง คือ ในการกำหนดตัวแปรของสตริง
อาศัยหลักการของอะเรย์ เพราะ สตริงก็คืออะเรย์ของอักขระที่ปิดท้ายด้วย
null character (\0) และมีฟังก์ชันพิเศษสำหรับทำงานกับสตริง
โดยเฉพาะอะเรย์ของสตริง คือ ถ้าหากมีสตริงจำนวนมาก ก็ควรจะทำให้เป็นอะเรย์ของสตริง
เพื่อที่จะเขียนโปรแกรมได้สะดวก การสร้างอะเรย์ของสตริง
สามารถสร้างได้ทั้งแบบที่ให้ค่าเริ่มต้นและแบบที่กำหนดเป็นตัวแปร
การดำเนินการเกี่ยวกับสตริง
ในการดำเนินการเกี่ยวกับสตริง จะมีฟังก์ชันที่อยู่ในแฟ้ม ข้อมูล stdio.h
เก็บอยู่ใน C Library อยู่แล้วสามารถนำมาใช้ได้
โดยการใช้คำสั่ง #include ในการเรียกใช้ เช่น
- ฟังก์ชัน strlen(str) ใช้หาความยาวของสตริง
- ฟังก์ชัน strcpy (str1,str2) ใช้คัดลอกข้อมูลจาก string หนึ่งไปยังอีก string หนึ่ง
- ฟังก์ชัน strcat(str1,str2) ใช้เชื่อมต่อข้อความ 2 ข้อความเข้าด้วยกัน

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

ฟังก์ชันอื่นที่ใช้กับสตริง การใช้สตริงนั้น จะมีฟังก์ชันในการกระทำกับสตริงอีกมาก จะช่วยให้การทำงานนั้นสะดวดมากยิ่งขึ้น ซึ่งการใช้ฟังก์ชันต่าง ๆ ที่เกี่ยวกับสตริงนั้นจะต้องนำเข้าไลบรารีไฟล์ strintg.h ด้วยเสมอ ซึ่งมีฟังก์ชันต่าง ๆ ดังนี้

วันพุธที่ 1 กรกฎาคม พ.ศ. 2552

DTS03-06-2552

ความหมายของอาร์เรย์
โครงสร้างข้อมูลแบบอาร์เรย์ (Array) หรือตัวแปรชุด มี 2 ความหมาย คือ
1. ความหมายโดยทั่วไปอาร์เรย์ หมายถึงโครงสร้างที่นำข้อมูลชนิดเดียว
กันมาจัดเรียงกันเป็น n มิติเป็นโครงสร้างตารางรูปสี่เหลี่ยมผืนผ้า
2. ความหมายทางคอมพิวเตอร์อาร์เรย์ หมายถึง กลุ่มของช่วงความจำ ในหน่วยความที่ใช้เก็บข้อมูลชนิดเดียวกันและ ทุกช่องต้องมีขนาดเท่ากัน ภายใต้ตัวแปรเดียวกัน
การสร้าง Array ขึ้นมาใช้งานนั้น ต้องคำนึงถึง
1. ชื่อของ Array
2. ขนาดของ Array แต่ละช่อง และมิติของ Array
3. ค่าสูงสุด ( Upper Bound) และค่าต่ำสุด (Lower Bound) ในแต่ละมิติ
อาร์เรย์ 1 มิติในการใช้โดยระบุถึงชื่อของอาร์เรย์นั้น และสามารถใช้ค่าใด ๆ
ในอาร์เรย์นั้นได้โดยใช้ชื่อกับตัวห้อยหรือ subscript อาร์เรย์ A(N)
หมายถึง อาร์เรย์ที่ชื่อ A ที่สามารถเก็บค่าได้ N ค่าหรือเป็นตารางแถวเดียวที่มีช่องอยู่ N ช่อง
แต่ละช่องมีชื่อ A(1),A(2),...,A(N) ตามลำดับ ในระดับที่ลึกเข้าไปในระบบคอมพิวเตอร์อีก 1 ระดับ
(ระดับ system programming)ชื่อ A จะเป็นแอดเดรสของอาร์เรย์ในพื้นที่ความจำ
ถ้าแต่ละช่องอาร์เรย์กินเนื้อที่ C เวิร์ด (word) ตำแหน่งหรือแอดเดรสของค่าตัวที่ i ในอาร์เรย์ [ หรือ A(i)] หาได้โดยการนำแอดเดรสตั้งต้นของอาร์เรย์นั้น (นั่นคือตำแหน่งของ A)
การเข้าถึงข้อมูล (Access) ข้อมูลใด ๆ ในโครงสร้าง สามารถกระทำได้โดยการระบุหมายเลขกำกับช่องข้อมูล ที่เรียกว่า ตัวดัชนี (Index) หรือบางครั้งเรียกว่า ตัวชี้ หรือ ซับสคริปต์ (Sub Script) การกำหนด Arrayการกำหนดอะเรย์จะต้องกำหนดชื่ออะเรย์ พร้อม subscript ซึ่งเป็น ตัวกำหนดขอบเขตของอะเรย์ มีได้มากกว่า 1 ตัว จำนวน subscript จะเป็นตัวบอกมิติของอะเรย์นั้น
อะเรย์ที่มี subscript มากกว่า 1 ตัวขึ้นไป จะเรียกว่า อะเรย์หลายมิติ
การกำหนด subscript แต่ละตัวจะประกอบไปด้วย ค่าสูงสุดและค่าต่ำสุดของ subscript
การประกาศค่าตัวแปรอะเรย์ในภาษาคอมพิวเตอร์บางภาษาลักษณะโครงสร้างข้อมูลอะเรย์ ข้อกำหนดของการกำหนดค่าต่ำสุดและค่าสูงสุดของ subscript คือค่าต่ำสุดต้องมีค่าน้อยกว่าหรือเท่ากับค่าสูงสุดเสมอ ค่าต่ำสุด เรียกว่า ขอบเขตล่าง (lower bound) ค่าสูงสุด เรียกว่า ขอบเขตบน (upper bound) ค่า subscript ที่ใช้อ้างอิงถึงสมาชิก จะต้องมีค่ามากกว่า หรือเท่ากับขอบเขตล่าง
record เป็นการกำหนดข้อมูลให้เป็นรูปแบบของ structurestructure
เป็นโครงสร้างที่สมาชิกมีประเภทของข้อมูลต่างกัน โดยอาจเป็นจำนวนเต็ม ทศนิยม อะเรย์ อักขระ พอยเตอร์ และ structure ด้วยกัน