vsashyn / secret-batman

Java interesting tasks.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

secret-batman

@secret-batman is a aggregated repository, witch consist of many interesting Java Tasks, especially Java Core, Algorithms and Multithreading threads.

Distribution and Contribution

No special license is provided. This software is considered to be public.

The following people are involved in development:

Mail them any suggestions, bugreports and comments.

Projects :

  • @Task9.Ships - producer - consumer pattern
    Порт. Корабли заходят в порт для разгрузки/загрузки контейнеров. Число контейнеров, находящихся в текущий момент в порту и на корабле, должно быть неотрицательным и превышающим заданную грузоподъемность судна и вместимость порта. В порту работает несколько причалов. У одного причала может стоять один корабль. Корабль может гружаться у причала,разгружаться или выполнять оба действия.
* **@Task10.1** - producer-consumer, blocking queue using mutex
Система ресторан. В ресторане n столиков за каждым столиком сидит клиент. Клиент делает заказ из трех блюд Борщ,Торт, Кофе. Клиент начинает обедает в последовательности Борщ->Торт->Кофе. Также в ресторане есть три повара. Один готовит борщи. Второй- торты. Третий-кофе.
* **@Task10.3Semaphore** -
Kласс семафор. Где выполняется условие первым попросил, первым получил.
* **@Task11.CyclicBarrier** -
Реализовать CyclicBarrier. Он приостанавливает все потоки, которые вызывают его метод await до тех пор, пока их не наберётся нужно количество, указанное в конструкторе. Также в конструкторе можно передать объект, реализующий знакомый нам интерфейс Runnable, который будет выполнен по достижению размера очереди потоков определённого количества
* **@Task13.PolandNotation** -
Дано арифметическое выражение типа (12*3+10)*5+12*7. Вычислить данное выражение используя паттерн Composite
* **@NonBlockingQueue** - own realization non-blocking queue, using CAS (concurrent atomic) on array * **@NonBlockingQueueList** - own realization non-blocking queue, using CAS (concurrent atomic) on LinkedList * **@Task15.Chat** - Socket + Multithreading
Используя технологию sockets создать консольный чат.
* **@Task8.2Dihotomi** -
Создать адаптивный алгоритм решения уравнения f(x)=0 на отрезке [a,b] методом деления отрезка пополам. Количество потоков зависит от глубины рекурсии.
* **@Task81.Multimatrix** -
Создать многопоточное приложение для перемножения двух матриц размерности nxn. Количество потоков к.
* **@Task8.4SumRange** - fing sum of range numbers with diffent count of threads. Find optimal count of threads. * **@InsertionSort** - Insertion sort * **@MyHashMapd** - own realization HashMap * **@PriorityQueue** - own realization PriorityQueue, according to Thomas Cormen + (**@PriorityQ**) - accoding to JDK realization * **@Proj1.ChristmasPresent** - simple project * **@SafeLinkedList** - LinkedList with exception event processing * **@Task3.Exposition** - simple project

About

Java interesting tasks.


Languages

Language:Java 100.0%