М. Э. Абрамян Programming Taskbook



Download 0,55 Mb.
Pdf ko'rish
bet65/73
Sana24.02.2022
Hajmi0,55 Mb.
#249225
1   ...   61   62   63   64   65   66   67   68   ...   73
Bog'liq
Abramyan (programmalash)

Двусвязный список
Dynamic29. Дан объект A
2
типа Node, имеющий открытое свойство Data це-
лого типа, а также открытые свойства Prev и Next типа Node. Свойство
Prev объекта A
2
содержит ссылку на предыдущий объект того же типа, а
свойство Next — ссылку на следующий объект. Вывести значения свойств
Data предыдущего и следующего объекта, а также ссылки A
1
и A
3
на
предыдущий и следующий объект.
Dynamic30

. Дана ссылка A
1
на начало непустой цепочки элементов-объектов
типа Node, связанных между собой с помощью своих свойств Next. Ис-
пользуя свойства Prev данных объектов, преобразовать исходную (од-
носвязную) цепочку в двусвязную, в которой каждый элемент связан не
только с последующим элементом (с помощью свойства Next), но и с пре-
дыдущим (с помощью свойства Prev). Свойство Prev первого элемента
положить равным null. Вывести ссылку A
2
на последний элемент преоб-
разованной цепочки.
В заданиях Dynamic31–Dynamic69 структура «двусвязный список» (doubly
linked list) моделируется цепочкой узлов-объектов типа Node, связанных как с
предыдущим, так и с последующим узлом (см. задание Dynamic30). Свойство
Next последнего элемента цепочки и свойство Prev первого элемента цепочки


142
М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6
равны null. Для доступа к любому элементу двусвязного списка достаточно
иметь ссылку на один из его элементов, однако для ускорения операций со
списком удобно хранить три ссылки: на первый элемент списка (first), на его
последний элемент (last) и на текущий элемент (current). Для пустого спис-
ка все эти ссылки полагаются равными null. Как в случае стека и очереди,
значением элемента списка считается значение его свойства Data.
Dynamic31. Дана ссылка A
0
на один из элементов непустого двусвязного спис-
ка. Вывести число — количество элементов в списке, а также ссылки A
1
и A
2
на первый и последний элементы списка.
Dynamic32. Даны числа D
1
и D
2
и ссылка A
0
на один из элементов непустого
двусвязного списка. Добавить в начало списка новый элемент со значени-
ем D
1
, а в конец — новый элемент со значением D
2
. Вывести ссылки на
первый и последний элементы полученного списка.
Dynamic33. Дано число и ссылка A
0
на один из элементов непустого дву-
связного списка. Вставить перед данным элементом списка новый элемент
со значением и вывести ссылку на добавленный элемент списка.
Dynamic34. Дано число и ссылка A
0
на один из элементов непустого дву-
связного списка. Вставить после данного элемента списка новый элемент
со значением и вывести ссылку на добавленный элемент списка.
Dynamic35. Даны ссылки A
1
и A
2
на первый и последний элементы двусвяз-
ного списка, содержащего не менее двух элементов. Продублировать в
списке первый и последний элементы (новые элементы добавлять перед
существующими элементами с такими же значениями) и вывести ссылку
на первый элемент преобразованного списка.
Dynamic36. Даны ссылки A
1
и A
2
на первый и последний элементы двусвяз-
ного списка, содержащего не менее двух элементов. Продублировать в
списке первый и последний элементы (новые элементы добавлять после
существующих элементов с такими же значениями) и вывести ссылку на
последний элемент преобразованного списка.
Dynamic37. Дан первый элемент A
1
непустого двусвязного списка. Продубли-
ровать в списке все элементы с нечетными номерами (новые элементы
добавлять перед существующими элементами с такими же значениями) и
вывести ссылку на первый элемент преобразованного списка.
Dynamic38. Дан первый элемент A
1
непустого двусвязного списка. Продубли-
ровать в списке все элементы с нечетными номерами (новые элементы
добавлять после существующих элементов с такими же значениями) и


Динамические структуры данных (.NET)
143
вывести ссылку на последний элемент преобразованного списка.
Dynamic39. Дан первый элемент A
1
непустого двусвязного списка. Продубли-
ровать в списке все элементы с нечетными значениями (новые элементы
добавлять перед существующими элементами с такими же значениями) и
вывести ссылку на первый элемент преобразованного списка.
Dynamic40. Дан первый элемент A
1
непустого двусвязного списка. Продубли-
ровать в списке все элементы с нечетными значениями (новые элементы
добавлять после существующих элементов с такими же значениями) и
вывести ссылку на последний элемент преобразованного списка.
Dynamic41. Дана ссылка A
0
на один из элементов непустого двусвязного спис-
ка. Удалить из списка данный элемент и вывести две ссылки: на элемент,
предшествующий удаленному, и на элемент, следующий за удаленным
(один или оба этих элемента могут отсутствовать; для отсутствующих
элементов выводить null). После удаления элемента из списка вызвать
для него метод Dispose.
Dynamic42. Дан первый элемент A
1
двусвязного списка, содержащего не ме-
нее двух элементов. Удалить из списка все элементы с нечетными номера-
ми и вывести ссылку на первый элемент преобразованного списка. После
удаления элементов из списка вызывать для них метод Dispose.
Dynamic43. Дан первый элемент A
1
непустого двусвязного списка. Удалить
из списка все элементы с нечетными значениями и вывести ссылку на
первый элемент преобразованного списка (если в результате удаления
элементов список окажется пустым, то вывести null). После удаления
элементов из списка вызывать для них метод Dispose.
Dynamic44. Дана ссылка A
0
на один из элементов непустого двусвязного спис-
ка. Переместить данный элемент в конец списка и вывести ссылки на
первый и последний элементы преобразованного списка. Новые объекты
типа Node не создавать, свойства Data не изменять.
Dynamic45. Дана ссылка A
0
на один из элементов непустого двусвязного спис-
ка. Переместить данный элемент в начало списка и вывести ссылки на
первый и последний элементы преобразованного списка. Новые объекты
типа Node не создавать, свойства Data не изменять.
Dynamic46. Дано число (> 0) и ссылка A
0
на один из элементов непустого
двусвязного списка. Переместить в списке данный элемент на позиций
вперед (если после данного элемента находится менее элементов, то
переместить его в конец списка). Вывести ссылки на первый и послед-


144
М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6
ний элементы преобразованного списка. Новые объекты типа Node не
создавать, свойства Data не изменять.
Dynamic47. Дано число (> 0) и ссылка A
0
на один из элементов непустого
двусвязного списка. Переместить в списке данный элемент на позиций
назад (если перед данным элементом находится менее элементов, то
переместить его в начало списка). Вывести ссылки на первый и послед-
ний элементы преобразованного списка. Новые объекты типа Node не
создавать, свойства Data не изменять.
Dynamic48. Даны ссылки A

Download 0,55 Mb.

Do'stlaringiz bilan baham:
1   ...   61   62   63   64   65   66   67   68   ...   73




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish