Chapter 1/1 Arrays. Introduction Data structures are classified as either linear or nonlinear Linear structures: elements form a sequence or a linear.

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Strength of Materials I EGCE201 กำลังวัสดุ 1
Advertisements

E-COMMERCE WEBSITE Smartzap Co., Ltd.. Company Profile บริษัท สมาร์ทแซป จำกัด ก่อตั้งเมื่อปี 2543 (13 ปี ) ในช่วงยุค Internet เพิ่ง เริ่มต้น เป็นบริษัทที่ดำเนินงานทางด้าน.
THE PARTS OF A FLOWERING PLANT AND THEIR FUNTION.
คำสั่ง DISPLAY รูปแบบที่ 1 DISPLAY identifier-1, identifier-2 … literal-1 literal-2 [ UPON mnemonic-name ]  ตัวอย่าง DISPLAY STUDENT-NAME. DISPLAY.
Set is a basic term in Mathematics. There is no precise definition for term “set”, But roughly speaking, a set is a collection of objects, Things or symbols,
Finite and Infinite Sets, Null set
Texture การประมวลผลภาพแบบดิจิตอล Ian Thomas
INC 551 Artificial Intelligence Lecture 2. Review Environment Action Sense, Perceive Make Decision Agent World Model Deliberative Agent.
ไวยกรณ์ไม่พึงบริบท CONTEXT-FREE GRAMMARS
จำนวน สถานะ NUMBER OF STATES. ประเด็นที่ สนใจ The number of distinct states the finite state machine needs in order to recognize a language is related.
Graphical User Interface charturong.ee.engr.tu.ac.th/CN208
รู้จักกับเทคโนโลยี RFID เบื้องต้น
VARIABLES, EXPRESSION and STATEMENTS. Values and Data Types Value เป็นสิ่งพื้นฐาน มีลักษณะเป็น ตัวอักษร หรือ ตัวเลข อาทิ 2+2 หรือ “Hello world” Value.
Chapter 7 : Deflection by Various Geometrical
อาจารย์ มธ. อธิบายการใช้ โมเดลของ
Data Structures and Algorithms
โครงสร้างข้อมูลแบบรายการโยง (Linked Lists) Data Structures and Algorithms อ. ธารารัตน์ พวงสุวรรณ คณะวิทยาศาสตร์และศิลปศาสตร์ มหาวิทยาลัยบูรพา วิทยาเขตสารสนเทศจันทบุรี
ระบบการจัดเก็บในคลังสินค้า
ภาษาของคณิตศาสตร์ รศ.ดร. สาธิต อินทจักร์
: Chapter 1: Introduction 1 Montri Karnjanadecha ac.th/~montri Image Processing.
Color Standards A pixel color is represented as a point in 3-D space. Axis may be labeled as independent colors such as R, G, B or may use other independent.
1 ภาษาLANGUAGE. ภาษาอังกฤษ หน่วยของภาษา อักขระ letters อักขระ letters คำ words คำ words ประโยค sentences ประโยค sentences ย่อหน้า paragraphs ย่อหน้า paragraphs.
ออโตมาตาจำกัด FINITE AUTOMATA
FINITE STATE AUTOMATA WITH OUTPUT
REGULAR EXPRESSION การบรรยายแบบสม่ำเสมอ
ภาษาสม่ำเสมอ REGULAR LANGUAGES
Helping you make better treatment decisions for your patients.
Chapter 19 Network Layer: Logical Addressing
Inductive, Deductive Reasoning ผศ.( พิเศษ ) น. พ. นภดล สุชาติ พ. บ. M.P.H.
Course Software Engineering SE Overview and Introduction.
Chapter 12 Riveted, Bolted & Welded Connections
Yv xv zv.
ผศ.ดร.สุพจน์ นิตย์สุวัฒน์
Asst.Prof. Dr.Surasak Mungsing
MAT 231: คณิตศาสตร์ไม่ต่อเนื่อง (3) Function Growth & Time-Complexity
Chapter 20 Expert System Chapter 20 Expert System Artificial Intelligence ดร. วิภาดา เวทย์ประสิทธิ์ ภาควิชาวิทยาการคอมพิวเตอร์ คณะ วิทยาศาสตร์
Merchant Marine Training Centre วิชาการเป็นเลิศ เชิดชู คุณธรรม ผู้นำ.
Chapter 2 Introduction to The C++ Language. Figure 2-1.
Page: 1 โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้ Gate & Karnaugh Map มหาวิทยาลัยเนชั่น จังหวัดลำปาง
A Classical Apriori Algorithm for Mining Association Rules
Enhanced Entity-Relationship Model © Pearson Education Limited 1995, 2005.
Algorithm Efficiency There are often many approaches (algorithms) to solve a problem. How do we choose between them? At the heart of computer program.
Data Structure and Algorithm
CPE 332 Computer Engineering Mathematics II Week 2 Chapter 2 Matrix.
วิธีการ Auto ship.
Most of the time, DNA exists in the form of chromatin ( โครมาทิน ). Chromatin is DNA wrapped around proteins called histones ( ฮีสโตน ). Left: An electron.
 Fungi reproduce using spores produced in the sporangium.  Spores contain the genetic material for growth of a new organism, protected by a tough coat.
SQL Structured Query Language.
STACK ADT By Pantharee S.. Stack Model  A list with the restriction that insertions deletions can be performed in only one position (LIFO)  Push – insert.
List ADTs By Pantharee S..
MIS: Pichai Takkabutr EAU DESIGN:- META DATA describe by Data Directory/ Data dictionary Architecture PWHW/SW DW/DB TABLE / FILE ROW / RECORD COLUMN.
การสร้าง WebPage ด้วย Java Script Wachirawut Thamviset.
Chapter 3 Simple Supervised learning
21 August ดรุณี ศมาวรรตกุล 1 2. ADT List - Unsorted list ADT - list implementation - Sorted List - Circular list - Doubly linked list.
SQL Structured Query Language.
 Mr.Nitirat Tanthavech.  HTML forms are used to pass data to a server.  A form can contain input elements like text fields, checkboxes, radio-buttons,
ว เคมีพื้นฐาน พันธะเคมี
Page : Stability and Statdy-State Error Chapter 3 Design of Discrete-Time control systems Stability and Steady-State Error.
Chapter 9 ตัวชี้ pointer.
Data Structure & Algorithm Concept
Dr.Surasak Mungsing CSE 221/ICT221 การวิเคราะห์และออกแบบขั้นตอนวิธี Lecture 04: การวิเคราะห์หาความซับซ้อนด้านเวลา ในรูป.
(การสุ่มตัวอย่างเพื่อการยอมรับ)
Dr.Surasak Mungsing CSE 221/ICT221 การวิเคราะห์และออกแบบขั้นตอนวิธี Lecture 05: การวิเคราะห์ความซับซ้อนของ ขั้นตอนวิธีการเรียงลำดับข้อมูล.
ตอนที่ 4: เคลื่อนไปกับของประทานของท่าน Part 4: Flowing In Your Gift
การวิเคราะห์และออกแบบขั้นตอนวิธี
4.7. B-Trees โครงสร้าง tree ที่กล่าวถึงมาแล้วนั้น อยู่บนสมมติฐานที่ว่าโครงสร้างทั้งหมดสามารถจัดเก็บอยู่ในหน่วยความจำของเครื่องคอมพิวเตอร์ได้ ถ้า จำนวนข้อมูลมีปริมาณมากเกินกว่าที่จะเก็บไว้ใน.
Lesson 7-6: Function Operations
Kernels Usman Roshan.
การวิเคราะห์และออกแบบขั้นตอนวิธี
Year 9 Term 1 Foundation (Unit 1) INTEGERS, ROUNDING AND PLACE VALUE
ใบสำเนางานนำเสนอ:

Chapter 1/1 Arrays

Introduction Data structures are classified as either linear or nonlinear Linear structures: elements form a sequence or a linear list –Array and Linked lists Nonlinear structures: such as trees and graphs

Operations Operations perform on any linear structure –Traversal: processing each element in the list –Search: Finding the location of the element with a given value or the record with a given key –Insertion: Adding a new element to the list –Deletion: Removing an element from the list –Sorting: Arranging the elements in some type of order –Merging: Combining two lists into a single list

Linear Arrays A list of finite number n of homogeneous data elements 1. The elements of the array are referenced respectively an index set consisting of n consecutive numbers 2. The elements of the array are stored respectively in successive memory locations The number n of element is called the length or size of the array

Linear Arrays (2) Length = UB - LB + 1, where UB, upper bound, is the largest index and LB, lower bound, is the smallest index Array notations: 1. A 1, A 2, A 3, …, A n or 2. A(1), A(2), A(3), …, A(4) or 3. A[1], A[2], A[3], …, A[4]

Example 1 DATA[1] = 247DATA[2] = 56 DATA[3] = 429 DATA[4] = 135DATA[5] = 87 DATA[6] = 156 Sometimes, we will denote such an array as follow: DATA: 247, 56, 429, 135, 87, 156

Example 1(2) DATA Fig. 1: The array DATA (a) (b)

Example 2 An automobile company users an array AUTO to record the number of automobiles sold each year from 1932 through 1984 As the index is begun 1932, so that AUTO[K] = number of automobiles sold in the year K LB = 1932 and UB = 1984 Length = UB - LB + 1 = = 55 That is, AUTO contains 55 elements

Linear Arrays Representation in Memory Let LA be a linear array in the memory of the computer LOC(LA[K]) = address of the element LA[K] of the array LA LOC(LA[K]) = Base(LA) + w(K - lower bound) where, Base(LA) = the address of the first element of LA w = number of words per memory cell

Linear Arrays Representation in Memory (2) Fig. 2 Compute memory...

Example 3 Array AUTO records the number of automobiles sold each year from 1932 through 1984 Suppose Base(AUTO) = 200 and w = 4 words LOC(AUTO[1932]) = 200, LOC(AUTO[1933]) = 204, LOC(AUTO[1934]) = 208, … LOC(AUTO[1965]) = ?

AUTO[1932] AUTO[1933] Fig. 3: Array AUTO in memory Example 3 (2)

Example 3 (3) LOC(AUTO[1965]) = Base(AUTO) + w( LB) = ( ) = 332

Two-Dimensional Arrays Representation Let A be a two-dimensional m * n array (a) Column-major order (b) Row-major order

Example of Two-dimensional Arrays (1,1) (2,1) (3,1) (1,2) (2,2) (3,2) (1,3) (2, 3) (3,3) (1,4) (2,4) (3,4) Column1 Column2 Column3 Column4 (a) Column –major order Fig. 4

(1,1) (1,2) (1,3) (1,4) (2,1) (2,2) (2, 3) (2,4) (3,1) (3,2) (3,3) (3,4) Row1 Row2 Row3 (b) Row-major orderFig. 4 Example of Two-dimensional Arrays (2)

Column-major order LOC(A[J, K]) = Base(LA) + w[m(K-1) + (J-1)] where Base(A) = the address of the first element A[1,1] of A m = a number of rows in one column

Row-major order LOC(A[J, K]) = Base(LA) + w[n(J-1) + (K-1)] where Base(A) = the address of the first element A[1,1] of A n = a number of columns in one row

Example 4 From Figure 4, if BASE( LA ) = 200 and w = 4 what is the address of LOC( LA [3, 2]) ? 1. Column-major order 2. Row-major order

General Multidimensional Arrays General multidimensional arrays are defined analogously An n-dimensional m 1 * m 2 * … * m n array B is a collection of m 1 m 2 … m n data elements Each element is specified by a list of n integers, K 1, K 2,…, K n, called subscripts, with the property that 1 <= K 1 <= m 1, 1 <= K 2 <= m 2, …, 1 <= K 1 <= m n, The element of B with subscripts will denoted by B K1, K2,…, K3 or B[K 1, K 2,…, K n ]

Example 5 Suppose B is a three-dimensional 2 * 4 * 3 array Then B contains 234 = 24 elements (as shown in Fig. 5) They appear in three layers, called pages Each page consists of the 24 rectangular array of elements with the same third subscript

B[1,1,3] B[1,2,3] B[1,3,3] B[1,4,3] B[2,1,2] B[2,2,3] B[2,3,3] B[2,4,3] B[1,1,2] B[1,2,2] B[1,3,2] B[1,4,2] B[2,1,2] B[2,2,2] B[2,3,2] B[2,4,2] B[1,1,1] B[1,2,1] B[1,3,1] B[1,4,1] B[2,1,1] B[2,2,1] B[2,3,1] B[2,4,1] Fig. 5 Page 3 Page 2 Page 1

Bsubscripts (1,1,1) (2,1,1) (1,2,1) (2,2,1) (2,3,1) (1,4,3) (2,4,3) Bsubscripts (1,1,1) (1,1,2) (1,1,3) (1,2,1) (1,2,2) (2,4,2) (2,4,3) (a) Column –major order. (b) Row-major order. Fig.6

General Multidimensional Arrays (3) LOC(C[K 1, K 2,…, K n ]) is computed by 1. Column major Base(C) + w[(((… (E N L N-1 + E N-1 ) L n-1 ) + … + E 3 ) L 2 + E 2 ) L 1 ) + E 1 ] 2. Row major Base(C) + w[(…(E 1 L 2 + E 2 ) L 3 + E 3 ) E 2 )L 4 + … + E N-1 ) L N + E N ] where Base(C) = the address of the first element of C w = the number of words per memory location E i = K i - lower bound L i = upper bound - lower bound + 1

Example 5 From figures 5 and 6 assume array is arranged by column major C is array 3 dimensional of 2 * 4 * 3 where Base = 200 and w = 4 what is the address of LOC[C[1, 3, 2]?

Example 6 A 3 dimensional array MAZE(2:8, -4:1, 6:10) It is organized in column major Base(MAZE) = 200 and w = 4 what is the address of MAZE[5,-1, 8] ?

Assignment 1 ให้นิสิตเขียน Pseudocode และโปรแกรมสำหรับ จัดการข้อมูลในแถวลำดับ (Arrays) ซึ่ง ประกอบด้วยรายละเอียดของนิสิตกลุ่มหนึ่ง ข้อมูล รหัสนิสิต ( จำนวนเต็ม 8 หลัก ), ชื่อ - สกุลนิสิต และ GPA กิจกรรม 1. เพิ่มข้อมูลในแถวลำดับ 2. ลบข้อมูลออกจากแถวลำดับ โดยใช้รหัสนิสิต เป็นคีย์หลัก 3. ปรับปรุงข้อมูลในแถวลำดับ โดยใช้รหัสนิสิตเป็น คีย์หลัก 4. พิมพ์ข้อมูลในแถวลำดับ

Assignment 1(2) ลักษณะงาน : เป็นงานเดี่ยว ต้องนำเสนองานด้วยตนเอง ( สอบปากเปล่า ) พร้อม Pseudocode ในเวลาคนละไม่เกิน 10 นาที กำหนดส่ง ระหว่างวันที่ พ. ย. ( เลือกกำหนดวันใดวัน หนึ่ง จำนวน 3 ชั่วโมงติดต่อกัน / กลุ่ม สิ่งที่ไม่พึงปรารถนา ( ปรับตก ) – ไม่สามารถนำเสนอในเวลาที่กำหนด ( คนละ 10 นาที ) – ส่งไม่ตรงตามเวลาที่ตกลงไว้ – งานที่นำเสนอไม่ใช่ผลงานของตนเอง ( ลอกหรือ ให้ผู้อื่นทำงานให้ )