Submit Search
Upload
Өгөгдлийн бүтэц 12
•
0 likes
•
541 views
International Ulaanbaatar University
Follow
Өгөгдлийн бүтэц 12
Read less
Read more
Education
Report
Share
Report
Share
1 of 37
Recommended
Өгөгдлийн бүтэц 10
Өгөгдлийн бүтэц 10
International Ulaanbaatar University
It101 lec6 10.06
It101 lec6 10.06
Nergui Batjargal
9.эрэмбэлэлтийн аргууд
9.эрэмбэлэлтийн аргууд
Bayalagmaa Davaanyam
Өгөгдлийн бүтэц 15
Өгөгдлийн бүтэц 15
International Ulaanbaatar University
Өгөгдлийн бүтэц 8,9
Өгөгдлийн бүтэц 8,9
International Ulaanbaatar University
Өгөгдлийн бүтэц 13
Өгөгдлийн бүтэц 13
International Ulaanbaatar University
өгөгдлийн сангийн системийн үндэс
өгөгдлийн сангийн системийн үндэс
Бямбаа Авирмэд
массив
массив
Khishighuu Myanganbuu
Recommended
Өгөгдлийн бүтэц 10
Өгөгдлийн бүтэц 10
International Ulaanbaatar University
It101 lec6 10.06
It101 lec6 10.06
Nergui Batjargal
9.эрэмбэлэлтийн аргууд
9.эрэмбэлэлтийн аргууд
Bayalagmaa Davaanyam
Өгөгдлийн бүтэц 15
Өгөгдлийн бүтэц 15
International Ulaanbaatar University
Өгөгдлийн бүтэц 8,9
Өгөгдлийн бүтэц 8,9
International Ulaanbaatar University
Өгөгдлийн бүтэц 13
Өгөгдлийн бүтэц 13
International Ulaanbaatar University
өгөгдлийн сангийн системийн үндэс
өгөгдлийн сангийн системийн үндэс
Бямбаа Авирмэд
массив
массив
Khishighuu Myanganbuu
Өгөгдлийн бүтэц 14
Өгөгдлийн бүтэц 14
International Ulaanbaatar University
Өгөгдлийн бүтэц 2-3
Өгөгдлийн бүтэц 2-3
International Ulaanbaatar University
U.cs101 алгоритм программчлал-14
U.cs101 алгоритм программчлал-14
Badral Khurelbaatar
U.cs101 алгоритм программчлал-13
U.cs101 алгоритм программчлал-13
Badral Khurelbaatar
Small basic үзүүлэн
Small basic үзүүлэн
baterden
9.эрэмбэлэлтийн аргууд
9.эрэмбэлэлтийн аргууд
Bayalagmaa Davaanyam
Datastructure algoritm
Datastructure algoritm
Nergui Batjargal
давталттай алгоритм
давталттай алгоритм
Enkh Gvnj
өгөгдлийн сан үүсгэх
өгөгдлийн сан үүсгэх
Tsoomoo Myagmar
Dsi lec5
Dsi lec5
ggmo86
Давталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогууд
Баярсайхан Л
Presentation1 өгөгдлийн сан
Presentation1 өгөгдлийн сан
baterden
Database 3
Database 3
Usukhuu Galaa
U.cs101 алгоритм программчлал-3
U.cs101 алгоритм программчлал-3
Badral Khurelbaatar
11 р анги хөтөлбөр
11 р анги хөтөлбөр
shulam
2
2
Nergui Batjargal
алгоритм 8
алгоритм 8
Баярсайхан Л
Өгөгдлийн бүтэц
Өгөгдлийн бүтэц
Muuluu
Ms access
Ms access
Ziyakhan Raimbek
Ogogdliin sangiin zohion baiguulalt lekts
Ogogdliin sangiin zohion baiguulalt lekts
Алдарболд Э.
Лекц №15
Лекц №15
Amarsaikhan Tuvshinbayar
Dsi lec12
Dsi lec12
ggmo86
More Related Content
What's hot
Өгөгдлийн бүтэц 14
Өгөгдлийн бүтэц 14
International Ulaanbaatar University
Өгөгдлийн бүтэц 2-3
Өгөгдлийн бүтэц 2-3
International Ulaanbaatar University
U.cs101 алгоритм программчлал-14
U.cs101 алгоритм программчлал-14
Badral Khurelbaatar
U.cs101 алгоритм программчлал-13
U.cs101 алгоритм программчлал-13
Badral Khurelbaatar
Small basic үзүүлэн
Small basic үзүүлэн
baterden
9.эрэмбэлэлтийн аргууд
9.эрэмбэлэлтийн аргууд
Bayalagmaa Davaanyam
Datastructure algoritm
Datastructure algoritm
Nergui Batjargal
давталттай алгоритм
давталттай алгоритм
Enkh Gvnj
өгөгдлийн сан үүсгэх
өгөгдлийн сан үүсгэх
Tsoomoo Myagmar
Dsi lec5
Dsi lec5
ggmo86
Давталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогууд
Баярсайхан Л
Presentation1 өгөгдлийн сан
Presentation1 өгөгдлийн сан
baterden
Database 3
Database 3
Usukhuu Galaa
U.cs101 алгоритм программчлал-3
U.cs101 алгоритм программчлал-3
Badral Khurelbaatar
11 р анги хөтөлбөр
11 р анги хөтөлбөр
shulam
2
2
Nergui Batjargal
алгоритм 8
алгоритм 8
Баярсайхан Л
Өгөгдлийн бүтэц
Өгөгдлийн бүтэц
Muuluu
Ms access
Ms access
Ziyakhan Raimbek
Ogogdliin sangiin zohion baiguulalt lekts
Ogogdliin sangiin zohion baiguulalt lekts
Алдарболд Э.
What's hot
(20)
Өгөгдлийн бүтэц 14
Өгөгдлийн бүтэц 14
Өгөгдлийн бүтэц 2-3
Өгөгдлийн бүтэц 2-3
U.cs101 алгоритм программчлал-14
U.cs101 алгоритм программчлал-14
U.cs101 алгоритм программчлал-13
U.cs101 алгоритм программчлал-13
Small basic үзүүлэн
Small basic үзүүлэн
9.эрэмбэлэлтийн аргууд
9.эрэмбэлэлтийн аргууд
Datastructure algoritm
Datastructure algoritm
давталттай алгоритм
давталттай алгоритм
өгөгдлийн сан үүсгэх
өгөгдлийн сан үүсгэх
Dsi lec5
Dsi lec5
Давталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогууд
Presentation1 өгөгдлийн сан
Presentation1 өгөгдлийн сан
Database 3
Database 3
U.cs101 алгоритм программчлал-3
U.cs101 алгоритм программчлал-3
11 р анги хөтөлбөр
11 р анги хөтөлбөр
2
2
алгоритм 8
алгоритм 8
Өгөгдлийн бүтэц
Өгөгдлийн бүтэц
Ms access
Ms access
Ogogdliin sangiin zohion baiguulalt lekts
Ogogdliin sangiin zohion baiguulalt lekts
Similar to Өгөгдлийн бүтэц 12
Лекц №15
Лекц №15
Amarsaikhan Tuvshinbayar
Dsi lec12
Dsi lec12
ggmo86
Lecture 5
Lecture 5
Muuluu
Лаборатор-3
Лаборатор-3
bsuren_bn
Lecture
Lecture
Lucy Mep
Өгөгдлийн бүтэц 11
Өгөгдлийн бүтэц 11
International Ulaanbaatar University
Java lecture4
Java lecture4
Onobold Odgerel
Java lecture4
Java lecture4
Onobold Odgerel
Lec04
Lec04
ganzorigb
Similar to Өгөгдлийн бүтэц 12
(9)
Лекц №15
Лекц №15
Dsi lec12
Dsi lec12
Lecture 5
Lecture 5
Лаборатор-3
Лаборатор-3
Lecture
Lecture
Өгөгдлийн бүтэц 11
Өгөгдлийн бүтэц 11
Java lecture4
Java lecture4
Java lecture4
Java lecture4
Lec04
Lec04
More from International Ulaanbaatar University
Lec8
Lec8
International Ulaanbaatar University
Lec7
Lec7
International Ulaanbaatar University
Lec5 6
Lec5 6
International Ulaanbaatar University
Lec4
Lec4
International Ulaanbaatar University
Lec3
Lec3
International Ulaanbaatar University
Lec2
Lec2
International Ulaanbaatar University
Lec1
Lec1
International Ulaanbaatar University
Визуаль програмчлал бие даалт
Визуаль програмчлал бие даалт
International Ulaanbaatar University
ОХШЗ - Бие Даалт
ОХШЗ - Бие Даалт
International Ulaanbaatar University
Ood lesson12.1 ---------
Ood lesson12.1 ---------
International Ulaanbaatar University
Ood lesson11 sequence
Ood lesson11 sequence
International Ulaanbaatar University
Ood lesson10 statechart
Ood lesson10 statechart
International Ulaanbaatar University
Ood lesson9 activity
Ood lesson9 activity
International Ulaanbaatar University
Ood lesson7,8 class
Ood lesson7,8 class
International Ulaanbaatar University
Ood lesson6 class
Ood lesson6 class
International Ulaanbaatar University
Ood lesson5
Ood lesson5
International Ulaanbaatar University
Ood lesson4
Ood lesson4
International Ulaanbaatar University
Ood lesson3
Ood lesson3
International Ulaanbaatar University
Ood lesson2
Ood lesson2
International Ulaanbaatar University
Ood lesson1
Ood lesson1
International Ulaanbaatar University
More from International Ulaanbaatar University
(20)
Lec8
Lec8
Lec7
Lec7
Lec5 6
Lec5 6
Lec4
Lec4
Lec3
Lec3
Lec2
Lec2
Lec1
Lec1
Визуаль програмчлал бие даалт
Визуаль програмчлал бие даалт
ОХШЗ - Бие Даалт
ОХШЗ - Бие Даалт
Ood lesson12.1 ---------
Ood lesson12.1 ---------
Ood lesson11 sequence
Ood lesson11 sequence
Ood lesson10 statechart
Ood lesson10 statechart
Ood lesson9 activity
Ood lesson9 activity
Ood lesson7,8 class
Ood lesson7,8 class
Ood lesson6 class
Ood lesson6 class
Ood lesson5
Ood lesson5
Ood lesson4
Ood lesson4
Ood lesson3
Ood lesson3
Ood lesson2
Ood lesson2
Ood lesson1
Ood lesson1
Өгөгдлийн бүтэц 12
1.
LOGO Лекц №12 Дараалал, түүнийг
массив ашиглан зохион байгуулах
2.
Хичээлийн агуулга
3.
Дараалал /Queue/ Дараалал
нь стекийн адил хязгаарлагдмал үйлдэлтэй өгөгдлийн бүтэц юм. Элемэнт оруулах буюу шинээр элемэнт нэмэх үйлдэл нь төгсгөлдөө хийгддэг, элемэнт гаргах буюу устгах үйлдэл нь эхэндээ хийгддэг өгөгдлийн бүтэцийг дараалал гэнэ. Дараалалыг FIFO /First-In-First-Out/ төрлийн жагсаалт ч гэж нэрлэлдэг. Өөрөөр хэлбэл эхэлж орсон нь эхэлж гарна гэсэн үг.
4.
Амьдрал дээрх дарааллын
жишээ: Дарааллын төгсгөл Төлбөр төлөх Дарааллын эхлэл Дараагийнх нь...
5.
Дарааллын компьютер дахь
жишээ Үйлдлийн систем процессууд буюу санах ойд ачаалагдсан програмуудыг хугацааны хуваарилалтаар зохиоцуулан ажиллуулах Принтерт хэвлэх файлуудын цуваа
6.
Дарааллыг нэвтрүүлэх Дарааллын
үндсэн үйлдлүүд болох Элемэнт нэмэх буюу оруулах үйлдэл нь дарааллын төгсгөлд хийгдэх тул төгсгөлийг тодорхойлох rear гэсэн хувьсагч Элемэнт устгах буюу гаргах үйлдэл нь дарааллын эхэнд хийгдэх тул эхлэлийг тодорхойлох front гэсэн хувьсагчийг ашиглана.
7.
Дарааллыг нэвтрүүлэх аргууд Компьютерийн
програмчлалд дарааллыг нэвтүүлэхдээ стекийн нэгэн адил дараах аргуудыг ашигладаг. Массив ашиглан нэвтрүүлэх Нэг холбоост жагсаалт ашиглан нэвтрүүлэх
8.
Дарааллыг массиваар илэрхийлэх хийсвэрлэлт •
Дарааллын өгөгдөл / *items / • Дарааллын хэмжээ / MaxQue / • Дарааллын эхлэл / front / • Дарааллын төгсгөл / rear / Дарааллын өгөгдөл: • Дараалалд элемэнт нэмэх /Enqueue/ • Дарааллаас элемэнт устгах /Dequeue/ • Дараалал хоосон эсэхийг шалгах /Emptyqueue/ • Дараалал дүүрсэн эсэхийг шалгах /Fullqueue/ • Дарааллын элемэнтүүдийг харах /Viewqueue/ Дарааллын үйлдэл:
9.
Дарааллыг массиваар илэрхийлэх хийсвэрлэлт [0]
[1] [2] [3] [4] [5] A B C дараалал массив
10.
Дарааллыг массив ашиглан нэвтрүүлэх
Дарааллыг массив ашиглан нэвтрүүлэх үед массивын хэмжээгээр дараалалд хадгалагдах элемэнтийн тоо хязгаарлагдана. Тиймээс Дараалалд элемэнт нэмэх бүртээ дараалал дүүрсэн эсэхийг шалгах хэрэгтэй болно. Дарааллаас элемэнт устгах бүртээ дараалал элемэнттэй эсэхийг шалгана. Дараалалд элемэнт нэмэх болон устгахад rear болон front хувьсагчдийн утга харгалзан нэг нэгээр нэмэгдэнэ.
11.
Дарааллыг массив ашиглан нэвтрүүлэх
12.
Дарааллыг массив ашиглан нэвтрүүлэх
Тэгвэл ямар үед дарааллыг дүүрсэн байна гэж үзэх вэ? ямар үед дарааллыг хоосон байна гэж үзэх вэ?
13.
Дарааллыг массив ашиглан нэвтрүүлэх Анхны
нөхцөл Дарааллаас элемэнт устгав Дараалал хоосон болох тохиолдол
14.
Дарааллыг массив ашиглан нэвтрүүлэх Анхны
нөхцөл Дараалалд элемэнт нэмэв Дараалал дүүрэх тохиолдол
15.
Дарааллыг массив ашиглан нэвтрүүлэх
Энэ байдлыг шийдэхийн тулд дарааллын эхний элемэнтийг хоосоноор тодорхойлно. Ингэснээр front==rear үед дараалал хоосон байх нөхцөл биелнэ. (rear + 1) % maxQue == front үед дараалал дүүрэн байх нөхцөл биелэнэ.
16.
Дарааллыг массив ашиглан нэвтрүүлэх Анхны
нөхцөл Дарааллаас элемэнт устгав Дараалал хоосон байх нөхцөл
17.
Дарааллыг массив ашиглан нэвтрүүлэх Дараалал
дүүрэн байх нөхцөл
18.
class Queue{ int maxQue,
front, rear; ItemType* queItems; public: Queue(int max); ~Queue(); void MakeEmpty(); bool Emptyqueue(); bool Fullqueue() ; void Enqueue(ItemType newItem); void Dequeue(ItemType& item); void Viewqueue(); }; Дарааллыг массиваар илэрхийлэх хийсвэр төрлийг тодорхойлох
19.
Queue::Queue(int max){ maxQue =
max + 1; front = maxQue - 1; rear = maxQue - 1; queItems = new ItemType[maxQue]; } Тайлбар: Queue Q(10); 10 хэмжээтэй Q гэсэн нэртэй дарааллыг үүсгэж байна. Дарааллыг үүсгэх байгуулагч функц:
20.
Cтекийг үүсгэх байгуулагч функц: MaxQue front rear
10 11 10 [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] queItems
21.
Дарааллыг үүсгэх байгуулагч функц: Дараалал
үүсгэсэн байна. Үүссэн дараалал хоосон байна. Queue.Car(2); Car.Emptyqueue()==true
22.
Queue::~Queue(){ delete [] queItems; } Дарааллыг
санах ойгоос чөлөөлөх устгагч функц:
23.
Дарааллыг санах ойгоос чөлөөлөх
устгагч функц: MaxQue front rear 10 11 10 [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] queItems
24.
bool Queue::Emptyqueue() { if (rear
== front) return true; else return false; } Дараалал хоосон эсэхийг шалгах
25.
Дарааллыг үүсгэх байгуулагч функц: дараалал
хоосон байна. Car.Emptyqueue()==true
26.
bool Queue::Fullqueue() { if((rear +
1) % maxQue == front) return true; else return false; } Дараалал дүүрэн эсэхийг шалгах
27.
Дараалал дүүрэн эсэхийг шалгах Эхлэл
төгсгөл Car.Fullqueue()==true
28.
void Queue::MakeEmpty() { front =
maxQue - 1; rear = maxQue - 1; } Дарааллыг хоослох
29.
Дарааллыг хоослох Мөнгө хураагч
цайндаа гарахдаа Дараалал дахь бүх машинуудыг явуулжээ Эхлэл Car.MakeEmpty();
30.
void Queue::Enqueue(ItemType newItem) { if
(Fullqueue()) cout<<"duuren, bolomjgui"<<endl; else { rear = (rear +1) % maxQue; queItems[rear] = newItem; } } Дараалалд элемэнт нэмэх
31.
Дараалалд элемэнт нэмэх MaxQue front rear
3 11 1 [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] A G queItems (3+1)%11=4 4 Q.Enqueue(‘E’); E
32.
Дараалалд элемэнт нэмэх Дараалалд
А машин зогслоо. Дараалал хоосон биш боллоо. Эхлэл ба төгсгөл Car.Enqueue(A);
33.
Дараалалд элемэнт нэмэх Дараалалд
B машин нэмэгдэж зогслоо. Эхлэл төгсгөл Car.Enqueue(B);
34.
void Queue::Dequeue(ItemType& item) { if
(Emptyqueue()) cout<<"hooson, bolomjgui"<<endl; else { front = (front + 1) % maxQue; item = queItems[front] ; } } Дарааллаас элемэнт устгах
35.
Дарааллаас элемэнт устгах MaxQue front rear
4 11 1 [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] A G E queItems (1+1)%11=2 Q.Dequeue(k);2 K=‘A’
36.
Дарааллаас элемэнт устгах Дарааллаас
B машин явлаа. Эхлэл ба төгсгөл Car.Dequeue(A);
37.
void Queue::Viewqueue(){ if(Emptyqueue()) cout<<"daraalal hooson
bna"<<endl; else for(int i=(front + 1) % maxQue; i< (rear +1) % maxQue;i++) cout<<queItems[i]<<endl; } Стекийн элемэнтүүдийг харах