Package dsa
Class Alphabet
java.lang.Object
dsa.Alphabet
An immutable data type to represent an alphabet.
-
Field Summary
Modifier and TypeFieldDescriptionstatic Alphabet
The ASCII alphabet (0-127).static Alphabet
The base-64 alphabet (64 characters).static Alphabet
The binary alphabet { 0, 1 }.static Alphabet
The decimal alphabet { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }.static Alphabet
The DNA alphabet { A, C, T, G }.static Alphabet
The extended ASCII alphabet (0-255).static Alphabet
The hexadecimal alphabet { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F }.static Alphabet
The lowercase alphabet { a, b, c, ..., z }.static Alphabet
The octal alphabet { 0, 1, 2, 3, 4, 5, 6, 7 }.static Alphabet
The protein alphabet { A, C, D, E, F, G, H, I, K, L, M, N, P, Q, R, S, T, V, W, Y }.static Alphabet
The Unicode 16 alphabet (0-65,535).static Alphabet
The uppercase alphabet { A, B, C, ..., Z }. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
contains
(char c) Returnstrue
ifc
is a character in this alphabet, andfalse
otherwise.int
lgRadix()
Returns the binary logarithm (rounded up) of this alphabet's radix.static void
Unit tests the data type.int
radix()
Returns the radix of this alphabet, ie, the number of characters in it.char
toChar
(int index) Returns the character with the given index.toChars
(int[] indices) Returns the characters with the given indices.int
toIndex
(char c) Returns the index ofc
.int[]
Returns the indices of the characters ins
.
-
Field Details
-
BINARY
The binary alphabet { 0, 1 }. -
OCTAL
The octal alphabet { 0, 1, 2, 3, 4, 5, 6, 7 }. -
DECIMAL
The decimal alphabet { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }. -
HEXADECIMAL
The hexadecimal alphabet { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F }. -
DNA
The DNA alphabet { A, C, T, G }. -
LOWERCASE
The lowercase alphabet { a, b, c, ..., z }. -
UPPERCASE
The uppercase alphabet { A, B, C, ..., Z }. -
PROTEIN
The protein alphabet { A, C, D, E, F, G, H, I, K, L, M, N, P, Q, R, S, T, V, W, Y }. -
BASE64
The base-64 alphabet (64 characters). -
ASCII
The ASCII alphabet (0-127). -
EXTENDED_ASCII
The extended ASCII alphabet (0-255). -
UNICODE16
The Unicode 16 alphabet (0-65,535).
-
-
Constructor Details
-
Alphabet
public Alphabet()Constructs a new alphabet using characters 0 through 255. -
Alphabet
Constructs a new alphabet from the string of characterss
.- Parameters:
s
- the string of characters.
-
-
Method Details
-
contains
public boolean contains(char c) Returnstrue
ifc
is a character in this alphabet, andfalse
otherwise.- Parameters:
c
- the character.- Returns:
true
ifc
is a character in this alphabet, andfalse
otherwise.
-
radix
public int radix()Returns the radix of this alphabet, ie, the number of characters in it.- Returns:
- the radix of this alphabet.
-
lgRadix
public int lgRadix()Returns the binary logarithm (rounded up) of this alphabet's radix.- Returns:
- the binary logarithm (rounded up) of this alphabet's radix.
-
toIndex
public int toIndex(char c) Returns the index ofc
.- Parameters:
c
- the character.- Returns:
- the index of
c
.
-
toIndices
Returns the indices of the characters ins
.- Parameters:
s
- the characters.- Returns:
- the indices of the characters in
s
.
-
toChar
public char toChar(int index) Returns the character with the given index.- Parameters:
index
- the index.- Returns:
- the character with the given index.
-
toChars
Returns the characters with the given indices.- Parameters:
indices
- the indices.- Returns:
- the characters with the given indices.
-
main
Unit tests the data type.- Parameters:
args
- the command-line arguments.
-