🗊Презентация Стек. Примеры использования стека

Нажмите для полного просмотра!
Стек. Примеры использования стека, слайд №1Стек. Примеры использования стека, слайд №2Стек. Примеры использования стека, слайд №3Стек. Примеры использования стека, слайд №4Стек. Примеры использования стека, слайд №5Стек. Примеры использования стека, слайд №6Стек. Примеры использования стека, слайд №7Стек. Примеры использования стека, слайд №8Стек. Примеры использования стека, слайд №9Стек. Примеры использования стека, слайд №10Стек. Примеры использования стека, слайд №11Стек. Примеры использования стека, слайд №12Стек. Примеры использования стека, слайд №13Стек. Примеры использования стека, слайд №14Стек. Примеры использования стека, слайд №15Стек. Примеры использования стека, слайд №16Стек. Примеры использования стека, слайд №17Стек. Примеры использования стека, слайд №18Стек. Примеры использования стека, слайд №19

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

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


Слайд 1





стек
Примеры использования стека
Описание слайда:
стек Примеры использования стека

Слайд 2





Абстрактный тип данных Стек 
Стеком называется последовательность элементов одного и того же типа, к которой можно добавлять новые элементы и удалять элементы последовательности. 
  Причем как добавление элементов, так и удаление элементов производится с одного и того же конца последовательности, называемого вершиной стека.
Описание слайда:
Абстрактный тип данных Стек Стеком называется последовательность элементов одного и того же типа, к которой можно добавлять новые элементы и удалять элементы последовательности. Причем как добавление элементов, так и удаление элементов производится с одного и того же конца последовательности, называемого вершиной стека.

Слайд 3





Операции со стеком
CreateStack() - создает пустой стек
DeleteStack () – уничтожает стек 
IsEmpty() – функция определения пустоты стека ли стек
 Push(NewElement) – добавляет новый элемент NewElement в стек 
Pop() – удаляет верхний элемент из стека 
Peek() – возвращает значение верхнего элемента (вершины стека) без его удаления
Описание слайда:
Операции со стеком CreateStack() - создает пустой стек DeleteStack () – уничтожает стек IsEmpty() – функция определения пустоты стека ли стек Push(NewElement) – добавляет новый элемент NewElement в стек Pop() – удаляет верхний элемент из стека Peek() – возвращает значение верхнего элемента (вершины стека) без его удаления

Слайд 4





Алгебраические выражения
Инфиксная запись выражений:
каждый бинарный оператор помещается между своими операндами
Префиксная запись выражений (Prefix):
 каждый бинарный оператор помещается          перед своими операндами
						(Польская запись)
Постфиксная запись выражений (Postfix):
 каждый бинарный оператор помещается          после своих операндов
				(Обратная Польская запись)
Описание слайда:
Алгебраические выражения Инфиксная запись выражений: каждый бинарный оператор помещается между своими операндами Префиксная запись выражений (Prefix): каждый бинарный оператор помещается перед своими операндами (Польская запись) Постфиксная запись выражений (Postfix): каждый бинарный оператор помещается после своих операндов (Обратная Польская запись)

Слайд 5





Алгебраические выражения
Описание слайда:
Алгебраические выражения

Слайд 6





Преобразование инфиксной формы в Prefix и  Postfix
Допустим, инфиксное выражение полностью заключено в скобки
Преобразование в префиксную форму:
каждый оператор перемещается на позицию соответствующей открывающейся скобки (перед операцией)
Преобразование в постфиксную форму:
каждый оператор перемещается на позицию соответствующей закрывающейся скобки (после операцией)
Скобки убираются
Описание слайда:
Преобразование инфиксной формы в Prefix и Postfix Допустим, инфиксное выражение полностью заключено в скобки Преобразование в префиксную форму: каждый оператор перемещается на позицию соответствующей открывающейся скобки (перед операцией) Преобразование в постфиксную форму: каждый оператор перемещается на позицию соответствующей закрывающейся скобки (после операцией) Скобки убираются

Слайд 7





Примеры
Преобразование в префиксную форму:
( ( A + B ) * C )
  +
*
	*+ABC
Преобразование в постфиксную форму:

( ( A + B ) * C )
		 +
			  *	
AB+C*
Описание слайда:
Примеры Преобразование в префиксную форму: ( ( A + B ) * C ) + * *+ABC Преобразование в постфиксную форму: ( ( A + B ) * C ) + * AB+C*

Слайд 8





Преимущества префиксной и постфиксной форм записи
Не нужны приоритеты операций, правила ассоциативности, скобки

Алгоритмы распознавания выражений и вычисления более просты
Описание слайда:
Преимущества префиксной и постфиксной форм записи Не нужны приоритеты операций, правила ассоциативности, скобки Алгоритмы распознавания выражений и вычисления более просты

Слайд 9





Вычисление постфиксных выражений
Допустим необходимо вычислить выражение:
		2*(3+4)
Его постфиксная запись:
		234+*
Порядок выполнения операций:
Помещаем в стек значения всех операндов, пока не встретим знак операции
Выталкиваем из стека 2 операнда 
Производим с ними соответствующую операцию
Результат помещаем в стек
Повторяем операции до тех пор, пока не кончится строка символов
Описание слайда:
Вычисление постфиксных выражений Допустим необходимо вычислить выражение: 2*(3+4) Его постфиксная запись: 234+* Порядок выполнения операций: Помещаем в стек значения всех операндов, пока не встретим знак операции Выталкиваем из стека 2 операнда Производим с ними соответствующую операцию Результат помещаем в стек Повторяем операции до тех пор, пока не кончится строка символов

Слайд 10





Пример:
Описание слайда:
Пример:

Слайд 11





Псевдокод алгоритма
Предположения:
Строка содержит синтаксически правильное выражение
Унарные операции и операции возведения в степень не используются
Операнды задаются строчными буквами
Описание слайда:
Псевдокод алгоритма Предположения: Строка содержит синтаксически правильное выражение Унарные операции и операции возведения в степень не используются Операнды задаются строчными буквами

Слайд 12





Псевдокод алгоритма
For (каждый символ ch в строке)
{ if (ch является операндом)
 		// помещаем ch в стек
		   Push(ch);
   else 
		{ Opign=ch; 
		   Op2=Pop(); //извлекаем значение из вершины
		   Op1=Pop(); //извлекаем значение из вершины
		 // выполняем соответствующую операцию
             Result=Op1 Opsign Op2; 
	 // помещаем результат в стек
    	   Push(Result);
		}; // конец оператора if
} // конец оператора For
Описание слайда:
Псевдокод алгоритма For (каждый символ ch в строке) { if (ch является операндом) // помещаем ch в стек Push(ch); else { Opign=ch; Op2=Pop(); //извлекаем значение из вершины Op1=Pop(); //извлекаем значение из вершины // выполняем соответствующую операцию Result=Op1 Opsign Op2; // помещаем результат в стек Push(Result); }; // конец оператора if } // конец оператора For

Слайд 13





Преобразование инфиксных выражение в постфиксные
Будем использовать:
Стек для хранения операций и скобок
Строку PostfixExp  для формирования постфиксного выражения
Описание слайда:
Преобразование инфиксных выражение в постфиксные Будем использовать: Стек для хранения операций и скобок Строку PostfixExp для формирования постфиксного выражения

Слайд 14





Преобразование инфиксных выражение в постфиксные
Алгоритм:
Если встретился операнд – помещаем его в строку
Если встретилась ‘(’ – помещаем в стек
Если встретился оператор:
Если стек пуст – помещаем оператор в стек
Если стек не пуст – операторы более высокого приоритета выталкиваются и помещаются в строку, пока не встретится ‘(’ или оператор более низкого приоритета
Если встретился символ ‘)’ , то все элементы выталкиваются из стека и помещаются в строку, пока не встретится соответствующая ‘(‘
Достигнув конца строки, все элементы стека добавляются в строку
Описание слайда:
Преобразование инфиксных выражение в постфиксные Алгоритм: Если встретился операнд – помещаем его в строку Если встретилась ‘(’ – помещаем в стек Если встретился оператор: Если стек пуст – помещаем оператор в стек Если стек не пуст – операторы более высокого приоритета выталкиваются и помещаются в строку, пока не встретится ‘(’ или оператор более низкого приоритета Если встретился символ ‘)’ , то все элементы выталкиваются из стека и помещаются в строку, пока не встретится соответствующая ‘(‘ Достигнув конца строки, все элементы стека добавляются в строку

Слайд 15





Пример: A-(B+C*D)/F)
Описание слайда:
Пример: A-(B+C*D)/F)

Слайд 16





Пример: A+B*(C/B+Z*(A+D))
Описание слайда:
Пример: A+B*(C/B+Z*(A+D))

Слайд 17





Пример: A+B*(C/B+Z*(A+D))
Описание слайда:
Пример: A+B*(C/B+Z*(A+D))

Слайд 18





Псевдокод алгоритма:
For (ch)
{ Swith (ch)
		{ case operand:
			PostfixExp= PostfixExp+ch;
		    break;
		   case ‘(‘:
			 Push(ch);
		    break;
		    case ‘)’:
			  While( ‘(‘)
			     {  PostfixExp= PostfixExp + Peek();
			         Pop();
			      };
Описание слайда:
Псевдокод алгоритма: For (ch) { Swith (ch) { case operand: PostfixExp= PostfixExp+ch; break; case ‘(‘: Push(ch); break; case ‘)’: While( ‘(‘) { PostfixExp= PostfixExp + Peek(); Pop(); };

Слайд 19





Псевдокод алгоритма:
		 case operator:
			While (!IsEmpty() и значение вершины != ‘(‘ 
				и Приоритет ch не превосходит 				приоритета вершины) 			            { PostfixExp= PostfixExp+Peek();
		     Pop();
			   } // конец While	
		            Push(ch);    
		 break;
            }// конец Swith;
   }// конец For
		  While(! IsEmpty() )
			     {  PostfixExp= PostfixExp + Peek();
			         Pop();
			      };	// конец While
Описание слайда:
Псевдокод алгоритма: case operator: While (!IsEmpty() и значение вершины != ‘(‘ и Приоритет ch не превосходит приоритета вершины) { PostfixExp= PostfixExp+Peek(); Pop(); } // конец While Push(ch); break; }// конец Swith; }// конец For While(! IsEmpty() ) { PostfixExp= PostfixExp + Peek(); Pop(); }; // конец While



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