Главная » Статьи для тега "public"

Векторная структура для бинарных деревьев

Добавлено Дата: 15 January, 2012 категория: Java, Структуры данных и алгоритмы

В основу простейшей структуры представления бинарного дерева Т положен принцип нумерации узлов дерева. Каждый узел v дерева Гполу- чает порядковый номер p{v) в виде целого числа, который определяется следующим образом:

•    если v является корнем Г, то p(v) = 1;

Читать »

Реализация интерфейса Java

Добавлено Дата: 7 January, 2012 категория: Java, Структуры данных и алгоритмы

Основным структурным элементом Java, лежащим в основе ИПП, является интерфейс. Интерфейс представляет собой совокупность заголовков методов без их реализации и данных. Другими словами, методы интерфейса всегда пусты. Если в классе реализуется интерфейс, в нем реализуются и все методы, объявленные в интерфейсе. Таким образом, интерфейс поддерживает наследование типа конкретизации, при котором требуется указание всех наследуемых методов.

Читать »

Множество Мандельброта

Добавлено Дата: 30 December, 2011 категория: Разработка для Windows Phone 7

В 1980 году Бенуа Мандельброт (1924-2010), рожденный в Польше французский и американский математик, который работал на IBM, впервые получил графическую визуализацию рекурсивного уравнения с комплексными числами, которое было выведено несколько ранее. Эта визуализация выглядела примерно следующим образом:

Читать »

Пример программы Java

Добавлено Дата: 22 December, 2011 категория: Java, Структуры данных и алгоритмы

В данном разделе приводится пример простой Java-программы, которая демонстрирует многие из описанных выше конструкций. В примере имеются два класса: CreditCard, в котором описаны объекты — кредитные карточки, и второй класс — Test, который проверяет работу класса CreditCard. Объекты — кредитные карточки, описываемые в классе CreditCard, являются упрощенными вариантами настоящих кредитных карточек. В них указаны идентификационный номер, информация о владельце счета и банке, информация о текущем состоянии счета и кредитный лимит.

Читать »

Tree Interface в Java

Добавлено Дата: 21 December, 2011 категория: Java, Структуры данных и алгоритмы

Абстрактный тип данных «дерево» (tree ADT) может использоваться для определения Java-интерфейсов, описывающих методы, реализуемые каждым деревом. Вместо того чтобы включать три описанные группы методов напрямую, вначале отделим относящиеся непосредственно к структуре дерева методы от общих методов, а затем разграничим методы доступа и запросов и методы обновления. Полученный в результате набор интерфейсов показан фрагментами кода 6.1-6.2. Кроме того, интерфейс InspectableContainer расширен (см. рис. 5.11) дополнительным методом isEmpty(). Однако заметим, что, согласно приведенному определению дерева, этот метод должен всегда возвращать «false», поскольку дерево не может быть пустым (имеется хотя бы один узел — корень).

Читать »

Реализация на основе двусвязного списка

Добавлено Дата: 20 December, 2011 категория: Java, Структуры данных и алгоритмы

Предположим, необходимо создать АТД «список» с помощью дважды связного списка. В самом простом случае узлы двусвязного списка будут соответствовать позиции АТД. Другими словами, каждый узел реализует интерфейс Position и, следовательно, содержит метод element(), который возвращает элемент, хранящийся в данном узле. Таким образом, сами узлы выступают в качестве позиций, имея двойственный характер: с одной стороны, это внутренние узлы связного списка, а с другой — традиционные позиции. Таким образом, для каждого узла v можно задать переменные next и prev, осуществляющие обращения соответственно к последующему и предыдущему узлам (которые могут быть просто сигнальными узлами, обозначающими начало или конец списка). Далее с точки зрения позиции в S «откроем» позицию р, чтобы найти узел v. Эта операция выполняется с помощью приведения типа позиции к узлу. Поскольку действия осуществляются с узлами, можно выполнить метод before(/?), возвращая v.prev (при условии, что v.prev не является головным сигнальным узлом, иначе это приведет к ошибке). Таким образом, позиции списка при реализации двусвязным списком используют преимущества объектно-ориентированного программирования, причем для этого не требуются дополнительные затраты места и времени. Кроме того, данный подход позволяет скрыть детали реализации, что обеспечивает возможность неоднократного использования кода, так как пользователь не будет знать, что позиционные объекты, передаваемые и возвращаемые как параметры, в действительности являются объектами узлов.

Читать »

Java-реализация

Добавлено Дата: 15 December, 2011 категория: Java, Структуры данных и алгоритмы

Метод computeDailyHighSpan, представленный во фрагменте кода 4.18, является Java-реализацией алгоритма computeSpans2. Массив объектов класса Quote, представленный во фрагменте кода 4.19, используется методом computeDailyHighSpan для доступа к информации о курсе акций, а также для хранения вычисленных интервалов.

Читать »

Реализация AVL-дерева на Java

Добавлено Дата: 13 December, 2011 категория: Java, Структуры данных и алгоритмы

Теперь перейдем к деталям реализации и проанализируем использование AVL-дерева Теп составными узлами для реализации упорядоченного словаря из п объектов. Алгоритмы ввода и удаления для Т требуют

Читать »

Реализация бинарного поискового дерева на Java

Добавлено Дата: 12 December, 2011 категория: Java, Структуры данных и алгоритмы

Теперь опишем класс бинарного поискового дерева BinarySearchTree, хранящий пары «ключ-элемент» класса Item (показанного повторно во фрагменте кода 9.2) в качестве элементов, расположенных в позициях (узлах) его бинарного дерева. Код BinarySearchTree приведен во фрагментах кода 9.3—9.5. Заметим, что показанное бинарное дерево Г использует только интерфейс BinaryTree, а также содержит методы expandExternal и removeAboveExternal (см. п. 6.4.2).

Читать »

Приведение типов внутри интерфейсов

Добавлено Дата: 8 December, 2011 категория: Java, Структуры данных и алгоритмы

В Java можно описать общие структуры данных, с помощью которых организованы элементы общего класса или интерфейса. Такие структуры могут быть использованы для хранения элементов лщбого класса, который является наследником общего класса или реализует общий интерфейс. Например, необходимо описать интерфейс Person для всех классов, связанных с людьми. Это можно сделать так, как показано во фрагменте кода 2.11.

Читать »

Реализация Entity-Компонента

Добавлено Дата: 27 November, 2011 категория: Java, JavaBeans

очень похожа на реализацию Session- Компонента. Вы должны реализовать методы home-интерфейса, remote- интерфейса и создать собственно класс Компонента. Этот класс должен содержать методы, которые соответствуют методам, объявленным в home- и remote-интерфейсах.

Читать »

Управление потоками, безопасность и ThreadGroup Java

Добавлено Дата: 11 June, 2011 категория: Java

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

Читать »

Класс Properties для хранения строковых ключей и соответствующих им строковых элементов

Добавлено Дата: 10 June, 2011 категория: Java

 

  Объект класса Properties используется для хранения строковых ключей и соответствующих им строковых элементов. является производным от Hashtable и предусматривает поддержку объекта Properties, предлагаемого по умолчанию для свойств (properties), которые отсутствуют в хеш-таблице (hashtable). Для манипуляций с объектом Properties почти во всех случаях используются стандартные методы Hashtable, но операции set и get можно осуществлять с помощью специальных методов, оптимизированных для работы с объектами String. Помимо унаследованных членов, класс Properties содержит ряд конструкторов и методов, рассмотренных ниже.

Читать »

Outputstream в Java

Добавлено Дата: 9 June, 2011 категория: Java

 

  Абстрактный     класс     Outputstream     во     многом     аналогичен     классу Inputstream;   он   предлагает   модель   вывода   байтовых   данных   в   объект-получатель. Методы класса Outputstream перечислены ниже.

 

Читать »

Объявление интерфейса Java

Добавлено Дата: 8 June, 2011 категория: Java

В объявлении интерфейса содержится служебное слово interface, за которым следуют наименование интерфейса и перечень его членов, заключенный в

фигурные скобки.

В составе интерфейса могут присутствовать члены трех категорий:

• константы (поля);

Читать »