Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
uchebno-metodicheskoe_posobie_SiAOD_1chast / учебно-методическое пособие СиАОД 1часть.doc
Скачиваний:
94
Добавлен:
20.03.2015
Размер:
1 Mб
Скачать

Контрольные вопросы

1.Понятие двусвязного списка. Возможные структуры двусвязного списка.

2.Задание двусвязного списка.

3.Основные операции над двусвязным списком.

Задания для практической работы

Создать на основе класса для линейного односвязного списка класс операций для работы с двусвязным списком.

  1. Дана последовательность символов, оканчивающаяся точкой найти всех соседей заданного символа ( первый и последний символы считать соседями ).

  2. Дана последовательность символов, оканчивающаяся точкой подсчитать количество символов, у которых левый сосед больше правого соседа ( первый и последний элемент считать соседями );

  3. Дана последовательность символов, оканчивающаяся точкой удалить все символы, у которых равные соседи ( первый и последний символы считать соседями );

  4. Дана последовательность символов, оканчивающаяся точкой переставить в обратном порядке все символы между первым и последним вхождениями заданного символа;

  5. Дана последовательность символов, оканчивающаяся точкой в конец последовательности добавить все ее символы, располагая их в обратном порядке ( например, из последовательности 1, 2, 3 получить 1, 2, 3, 2,1).

  6. Дана последовательность латинских букв, оканчивающаяся точкой. Среди букв есть специальный символ, появление которого означает отмену предыдущей буквы; k знаков подряд отменяют k предыдущих букв, если такие есть. Учитывая вхождение этого символа преобразовать последовательность.

  7. Даны две разреженные квадратные матрицы A и B порядка n(разреженная матрица это матрица высокого порядка с большим количеством нулевых элементов ). Получить матрицу C = A+B. Для представления разреженной матрицы использовать двусвязный циклический список. Каждое звено списка состоит из пяти полей :

  • поле с номером строки ненулевого элемента,

  • поле с номером столбца ненулевого элемента,

  • поле со значением элемента,

  • поле со ссылкой на предыдущий ненулевой элемент в этой же строке,

  • поле со ссылкой на предыдущий ненулевой элемент в этом же столбце. Каждая строка ( и столбец ) имеют заглавное звено, соответствующее ссылочное поле которого содержит ссылку на последний ненулевой элемент в строке ( в столбце ) .

  1. Дан многочлен P( x ) произвольной степени с целыми коэффициентами, причем его одночлены могут быть не упорядочены по степеням x , а одночлены с одинаковой степенью могут повторяться (например, -75x + 8x4 - x2 + 6x4 – 5 - x). Привести подобные члены в этом многочлене и расположить одночлены по убыванию степеней x .

  2. Даны действительные числа x1 , x2 , . . . , xn ( n >= 2 и заранее неизвестно). Вычислить x1 xn + x2 xn-1 + . . . + xn x1.

  3. Даны действительные числа x1 , x2 , . . . , xn ( n >= 2 и заранее неизвестно). Вычислить (x1 + xn ) ( x2 + xn-1 ) . . . ( xn + x1 ) .

  4. Даны действительные числа x1 , x2 , . . . , xn ( n >= 2 и заранее неизвестно). Вычислить (x1 + x2 + 2xn ) ( x2 + x3 + 2xn-1 ) . . . ( xn-1 + xn + 2x2 ) .

  5. Даны действительные числа y1 , y2 , . . . , yn ( n >= 2 и заранее неизвестно). Получить последовательность y1 , y2 , . . . , yn , y1 , . . . , yn .

  6. Даны действительные числа y1 , y2 , . . . , yn ( n >= 2 и заранее неизвестно). Получить последовательность y1 , y2 , . . . , yn , yn , . . . , y1 .

  7. Даны действительные числа y1 , y2 , . . . , yn ( n >= 2 и заранее неизвестно). Получить последовательность yn , yn-1 , . . . , y1 , y1 , . . . , yn .

  8. Даны действительные числа a1 , a2 , . . . , a2n (n >= 2 и заранее неизвестно). Вычислить

      1. a1 a2n + a2 a2n-1 + . . . + an an+1 ;

  9. Даны действительные числа a1 , a2 , . . . , a2n (n >= 2 и заранее неизвестно). Вычислить min ( a1 + an+1 , a2 + an+2 , . . . , an + a2n ) ;

  10. Даны действительные числа a1 , a2 , . . . , a2n (n >= 2 и заранее неизвестно). Вычислить max ( min ( a1 , a2n ) , min ( a3 , a2n-2 ) , . . . , min ( a2n-1 , a2 ) ) .

  11. Далее можно выбрать любую из задач для линейного односвязного списка.