|
Linked list
The positive sides of using a linked list instead of using arrays is that they
are more dynamic when it comes to adding and deleting items in the list.
The negative side is that you can not directly request an element in the list
as you can with an array.The linked list is made up of elements that each has a
pointer to the next in the list. The program then only needs a pointer to the first
element to be able to access all of them.
To add an element in the list you need to do the following steps:
1. Create the new element.
2. Find the position where to insert the element.
3. Set the next pointer of the new element to the same as the old one.
4. Set the next pointer of the old element to the new element.
The reverse can be done to delete an element from the list.
The example below is slightly more complicated. It is a double linked list
(meaning that all elements also has a previous pointer) and the link includes
function for adding elements first and last in the list.
File: Linked List (Java)
Huffman coding
Huffman coding is the method used in most compress techniques (zip for example).
The idea behind it is to store pieces of data that is more often used with fewer
bits, and the one that is not often used can be bigger. The compressed data is
divided into two parts, first is the Huffman tree that holds how the data should
be read. So the first step is to make the tree and then use that to compress
the data. And when decompressing the data the tree first must be recreated before
the data is read.
File: Huffman coding (Java)
|
|
|
|
Java and AspectJ |
|
Example of Linked lists and Huffman coding. |
|
Introduction to Aspect Oriented Programming. |
|
The game Tetris made in AspectJ. |
Artificial Intelligence |
|
Optimizing Genetic Algorithms for time critical problems. |
Requirement and V&V |
|
How to handle requirements when developing market driven products? |
|
Which technique is best? |
|
Introduction to the field of verification and validation for the newcomers. |
Computer Science |
|
An overview of how RAID works. |
|
What good is the technology if it too complex to use? |
|