🗊Презентация Реализация основных алгоритмов. Практическое занятие 1

Нажмите для полного просмотра!
Реализация основных алгоритмов. Практическое занятие 1, слайд №1Реализация основных алгоритмов. Практическое занятие 1, слайд №2Реализация основных алгоритмов. Практическое занятие 1, слайд №3Реализация основных алгоритмов. Практическое занятие 1, слайд №4Реализация основных алгоритмов. Практическое занятие 1, слайд №5Реализация основных алгоритмов. Практическое занятие 1, слайд №6Реализация основных алгоритмов. Практическое занятие 1, слайд №7Реализация основных алгоритмов. Практическое занятие 1, слайд №8Реализация основных алгоритмов. Практическое занятие 1, слайд №9Реализация основных алгоритмов. Практическое занятие 1, слайд №10Реализация основных алгоритмов. Практическое занятие 1, слайд №11Реализация основных алгоритмов. Практическое занятие 1, слайд №12Реализация основных алгоритмов. Практическое занятие 1, слайд №13

Вы можете ознакомиться и скачать презентацию на тему Реализация основных алгоритмов. Практическое занятие 1. Доклад-сообщение содержит 13 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Практическое занятие №1
Подготовка к 1-ой лабораторной работе.
Реализация основных алгоритмов.
Описание слайда:
Практическое занятие №1 Подготовка к 1-ой лабораторной работе. Реализация основных алгоритмов.

Слайд 2





Основные термины
1. Информация в таблице представлена множеством узлов (записей, объектов, элементов).
Узел обозначается так:
2. Каждый узел состоит из одного или нескольких последовательных слов в памяти машины, разделенных на именуемые части, называемые полями.
3. Адресом узла является адрес первого слова в узле (связь, указатель, ссылка, стрелка на узел).
Для обозначения пустой связи используется:
Описание слайда:
Основные термины 1. Информация в таблице представлена множеством узлов (записей, объектов, элементов). Узел обозначается так: 2. Каждый узел состоит из одного или нескольких последовательных слов в памяти машины, разделенных на именуемые части, называемые полями. 3. Адресом узла является адрес первого слова в узле (связь, указатель, ссылка, стрелка на узел). Для обозначения пустой связи используется:

Слайд 3





Определение линейного списка
Линейный список – это множество, состоящее из n≥0 узлов: x[0], …, x[n-1], структурные свойства которого ограничиваются условиями: 
если n≥0, то x[0] является первым
если 0<k<n-1, то k-му узлу предшествует x[k-1] и за ним следует x[k+1].
Описание слайда:
Определение линейного списка Линейный список – это множество, состоящее из n≥0 узлов: x[0], …, x[n-1], структурные свойства которого ограничиваются условиями: если n≥0, то x[0] является первым если 0<k<n-1, то k-му узлу предшествует x[k-1] и за ним следует x[k+1].

Слайд 4





Организация хранения данных
Для хранения данных целесообразно использовать следующую конструкцию:
struct list  {
	int inf; //информационная часть
	list * next; //ссылка на следующий элемент
};
list * first;
Описание слайда:
Организация хранения данных Для хранения данных целесообразно использовать следующую конструкцию: struct list { int inf; //информационная часть list * next; //ссылка на следующий элемент }; list * first;

Слайд 5





Генерация псевдослучайных чисел
Используется команда rand()
Заголовочный файл <stdlib.h>
Для того, чтобы генератор каждый раз начинал генерацию с нового числа, необходимо подключить заголовочный файл <time.h>
Для получения различных чисел: 
srand((unsigned)time(0));
Для генерации целого числа от a до b
int irand(int  a, int b)
{ return rand() % (b-a+1)+a; }
Пример: получить псевдослучайное число от -7 до 4
		irand(-7, 4)
Описание слайда:
Генерация псевдослучайных чисел Используется команда rand() Заголовочный файл <stdlib.h> Для того, чтобы генератор каждый раз начинал генерацию с нового числа, необходимо подключить заголовочный файл <time.h> Для получения различных чисел: srand((unsigned)time(0)); Для генерации целого числа от a до b int irand(int a, int b) { return rand() % (b-a+1)+a; } Пример: получить псевдослучайное число от -7 до 4 irand(-7, 4)

Слайд 6





Создание линейного списка
n=7; 
list *first=new list; 
list *p=first; 
cin>>p->inf ; 
for (int i=0; i<n-1; i++) { 
   p->next=new list ; 
   p=p->next ; 
   cin>>p->inf; 
} 
p->next=0;
Описание слайда:
Создание линейного списка n=7; list *first=new list; list *p=first; cin>>p->inf ; for (int i=0; i<n-1; i++) { p->next=new list ; p=p->next ; cin>>p->inf; } p->next=0;

Слайд 7





Печать линейного списка
p = first; 
while (р) 
{ 
   cout << p->inf << “ “ ; 
   р = p->next; 
} 
cout << endl;
Описание слайда:
Печать линейного списка p = first; while (р) { cout << p->inf << “ “ ; р = p->next; } cout << endl;

Слайд 8





Создание пользовательского интерфейса
int num = 1; 
while (num) { 
   cin >> num; 
   switch (num) { 
     case 0: break; 
     case 1: {
                  //ввод списка 
                  break; } 
     case 2: {
                  //вывод списка 
                  break; } 
     default: cout << “Error!” << end l; 
     } 
}
Описание слайда:
Создание пользовательского интерфейса int num = 1; while (num) { cin >> num; switch (num) { case 0: break; case 1: { //ввод списка break; } case 2: { //вывод списка break; } default: cout << “Error!” << end l; } }

Слайд 9





Вставка элемента в начало списка
list * q = new list; 
cin >> q->inf; 
q->next = first; 
first = q;
Описание слайда:
Вставка элемента в начало списка list * q = new list; cin >> q->inf; q->next = first; first = q;

Слайд 10





Включение элемента в середину 
(после i-го элемента)
p = first;
int k = 2; 
for (i=0; i<k; i++)
   p = p->next; 
list *w=new list; 
cin >> w->inf ; 
w->next = p->next; 
p->next = w;
Описание слайда:
Включение элемента в середину (после i-го элемента) p = first; int k = 2; for (i=0; i<k; i++) p = p->next; list *w=new list; cin >> w->inf ; w->next = p->next; p->next = w;

Слайд 11





Удаление элемента из середины (i-го элемента)
k = 2; 
p = first; 
for (i=0; i<k-1; i++ )
   p = p->next; 
w = p->next; 
p->next = w->next; 
delete w;
Описание слайда:
Удаление элемента из середины (i-го элемента) k = 2; p = first; for (i=0; i<k-1; i++ ) p = p->next; w = p->next; p->next = w->next; delete w;

Слайд 12





Создание копии списка
p = first; 
list *newlist =new list; 
newlist->inf = p->inf; 
p = p->next; 
list *newfirst = newlist; 
while (p) { 
   newlist->next = newlist; 
   newlist = newlist->next; 
   newlist->inf = p->inf; 
   p = p->next ; 
} 
newlist->nex t = 0;
Описание слайда:
Создание копии списка p = first; list *newlist =new list; newlist->inf = p->inf; p = p->next; list *newfirst = newlist; while (p) { newlist->next = newlist; newlist = newlist->next; newlist->inf = p->inf; p = p->next ; } newlist->nex t = 0;

Слайд 13





Разбиение списка на два по заданному критерию
p = first; 
list *chet = newlist; 
list *nechet = newlist;
list *p1 = chet; 
list *p2 = nechet; 
list *w1 = p1; 
list *w2 = p2; 
while (p) { 
if (p->inf % 2) { 
   p2->inf = p->inf; 
   p2->next = newlist; 
   w2 = p2; 
p2 = p2->next; 
} 
else { 
   p1->inf = p->inf; 
   p1->next = newlist; 
   w1 = p1; 
   p1 = p1->next ; 
} ; 
p = p->next; 
}
w1->next = 0; 
w2->next = 0 ;
Описание слайда:
Разбиение списка на два по заданному критерию p = first; list *chet = newlist; list *nechet = newlist; list *p1 = chet; list *p2 = nechet; list *w1 = p1; list *w2 = p2; while (p) { if (p->inf % 2) { p2->inf = p->inf; p2->next = newlist; w2 = p2; p2 = p2->next; } else { p1->inf = p->inf; p1->next = newlist; w1 = p1; p1 = p1->next ; } ; p = p->next; } w1->next = 0; w2->next = 0 ;



Похожие презентации
Mypresentation.ru
Загрузить презентацию