Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Бишоп Д. -> "Эффективная робота Java 2" -> 245

Эффективная робота Java 2 - Бишоп Д.

Бишоп Д. Эффективная робота Java 2 — Спб.: Питер, 2002. — 592 c.
ISBN 966-552-107-1
Скачать (прямая ссылка): effektivnayarabotajava2002.djvu
Предыдущая << 1 .. 239 240 241 242 243 244 < 245 > 246 247 248 249 250 251 .. 259 >> Следующая

String iteiri — T. next To ken {) ;
return Integer.valueOf (item. trim ()). intValue () ;
)
)
Тестирование. Выполнение программы даст следующее;
*** Курсы повышения квалификации ****
л
Какой наибольший номер курса? 10
Какой наибольший номер работника? 100
Введите перечень курсов, посещаемых работником:
Шаблон ввода: номер работника номера курсов Пример: 100 12 1 4 15
*
После перечня курсов введите пустую строку 50 1 2 3 44 3 8 7 99 1 61 1 7
Данные введены успешно.
Битовые множества
565
Курсы и записавшиеся на них
О: Нет желающих 1: 50 61 99 2: 50 3: 44 50 4: Нет желающих 5: Нет желавших 6: Нет желавших 7; 44 61 8: 44
91 Нет желашцих
Курсы, посещаемые работником
44: З 7 0 50: 12 3 61: 1 7 99: 1
На каких курсах будет нужен компьютер? 2 3 Работники, которым будут нужны компьютеры:
44 50
Резюме
В этом кратком рассмотрении алгоритмов и структур данных мы хотели подчеркнуть, что всегда существует более одного способа решения поставленной задачи. Например, для сортировки и поиска есть два метода — линейный и двоичный, эффективность которых существенно различается. Также была рассмотрена рекурсия как средство, позволяющее разработать простой и элегантный алгоритм решения.
Мы можем реализовать структуры данных с помощью массивов или связных списков, которые имеют различные возможности. Для каждой структуры мы привели определенный комплект свойств, позволяющий описать эти структуры независимо от принципов, лежащих в основе их реализации,
Были рассмотрены четыре структуры данных — стеки, очереди, связные списки и битовые множества. Три из них, которые реализованы в lava (стеки, связные списки и битовые множества) служат основой и справочным материалом для определения четвертой структуры. В примерах, демонстрирующих работу с этими структурами данных, вновь были задействованы классы и функции, которые реже употребляются в Java. Это — интерфейсы, классы-разделители и определенные пользователем объек-ты-искл ючения.
Вопросы
15.1. Если для обработки массива целых чисел потребуется линейный поиск, описанный в разделе 15,2, какую строку вы выберете?
а) trow new ItemNotFoundException [);
б) for (int і = 0; і < a,length; і++)
в) if (х.equals(а[і])
г) ни одну из них
566
Главо 15. Структуры данных и алгоритмы
15.2. Сколько сравнений потребуется выполнить двоичному поиску для списка чисел
8 17 25 35 41 52 60 75 86
чтобы найти число 35?
а) 4
б) 3
в) 5
г) 2
15.3. Двоичный поиск всегда будет работать быстрее, чем линейный, если искомый элемент находится;
а) в конце списка
б) в начале списка
в) отсутствуют в списке
г) во второй половине списка
15.4. Вели мы помещаем попеременно числа от 1 до 10 в два стека, S1 и S2, затем извлекаем все элементы стека s 1, а следом за ними все элементы стека S2T какая последовательность будет выведена на экран после выполнения следующего кода:
Stack 51 = new Stack(5);
Stack S2 = new Stack(6); for (int і = 1,- І<10,- l+=2} {
51.push (i);
52.push{1+1};
)
while (!SI.empty(>)
System.out .println (SI - pop (} + " Tl) ; while С152.empty(}}
System.out,printIn(S2.pop О +" ");
а) 10 987654321
б) 9 10 7 8 5 6 3 4 12
в) 97531 10 8642
r) 10 87642975321
15.5. В примере 15.3 (программа Wai t іngRoom) примем, что каждый период времени равен двум минутам. На основе приведенного здесь результата работы программы определите, сколько времени первому в списке пациенту пришлось ждать окончания выполнения программы:
а) 2 мин
б) 12 мин
в) 10 мин
г) 20 мин
15.6. Чтобы добавить новый элемент куда-нибудь в середину связного списка, мы должны:
а) с помощью итератора пройти по списку с самого начала, найти подходящее место и использовать метод add (index, object)
Вопросы
567
б) выполнить действия, указанные в варианте а) или использовать текущую позицию для указания индекса в методе add (index, object)
в) применить метод contains для нахождения нужной позиции и использовать ее как точку отсчета
г) применить метод binarySearch для нахождения нужной позиции, а затем использовать add (index, object)
15.7. В программе Приемная доктора” (Пример 15.3) назовите, сколько времени пришлось ждать пациенту, указанному в списке под номером 12, до начала приема?
а) 10 мин
б) 9 мин
в) ) I мин
г) 1 мин
15.8. Технология, по которой метод может вызывать сам себя, называется:
а) итерацией
б) рекурсией
в) интроспекцией
г) инверсией
15.9. Дайте определение новому битовому множеству, хранящему информацию обо всех курсах, на которые записался любой из работников (Пример 15*5):
а) BitSet allCourses = new BitSet (courseMax);
б) BitSet allCourses [] = new BitSet (courseMax);
в) BitSet allCourses = new BitSet [courseMax]; r) BitSet allcourses.setMax (courseMax);
15.10. Каким должен быть оператор, который можно добавить в метод readln для обновления данного множества всех курсов (alicourseg) во время обработки перечня курсов, на которые записался работник?
Предыдущая << 1 .. 239 240 241 242 243 244 < 245 > 246 247 248 249 250 251 .. 259 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.