Package edu.princeton.cs.algs4
Class Alphabet
- Object
-
- edu.princeton.cs.algs4.Alphabet
-
public class Alphabet extends Object
-
-
Field Summary
Fields Modifier and Type Field Description static Alphabet
ASCII
The ASCII alphabet (0-127).static Alphabet
BASE64
The base-64 alphabet (64 characters).static Alphabet
BINARY
The binary alphabet { 0, 1 }.static Alphabet
DECIMAL
The decimal alphabet { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }.static Alphabet
DNA
The DNA alphabet { A, C, T, G }.static Alphabet
EXTENDED_ASCII
The extended ASCII alphabet (0-255).static Alphabet
HEXADECIMAL
The hexadecimal alphabet { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F }.static Alphabet
LOWERCASE
The lowercase alphabet { a, b, c, ..., z }.static Alphabet
OCTAL
The octal alphabet { 0, 1, 2, 3, 4, 5, 6, 7 }.static Alphabet
PROTEIN
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
UNICODE16
The Unicode 16 alphabet (0-65,535).static Alphabet
UPPERCASE
The uppercase alphabet { A, B, C, ..., Z }.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
contains(char c)
Returns true if the argument is a character in this alphabet.int
lgR()
Returns the binary logarithm of the number of characters in this alphabet.static void
main(String[] args)
Unit tests theAlphabet
data type.int
radix()
Returns the number of characters in this alphabet (the radix).char
toChar(int index)
Returns the character corresponding to the argument index.String
toChars(int[] indices)
Returns the characters corresponding to the argument indices.int
toIndex(char c)
Returns the index corresponding to the argument character.int[]
toIndices(String s)
Returns the indices corresponding to the argument characters.
-
-
-
Field Detail
-
BINARY
public static final Alphabet BINARY
The binary alphabet { 0, 1 }.
-
OCTAL
public static final Alphabet OCTAL
The octal alphabet { 0, 1, 2, 3, 4, 5, 6, 7 }.
-
DECIMAL
public static final Alphabet DECIMAL
The decimal alphabet { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }.
-
HEXADECIMAL
public static final Alphabet HEXADECIMAL
The hexadecimal alphabet { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F }.
-
DNA
public static final Alphabet DNA
The DNA alphabet { A, C, T, G }.
-
LOWERCASE
public static final Alphabet LOWERCASE
The lowercase alphabet { a, b, c, ..., z }.
-
UPPERCASE
public static final Alphabet UPPERCASE
The uppercase alphabet { A, B, C, ..., Z }.
-
PROTEIN
public static final Alphabet 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
public static final Alphabet BASE64
The base-64 alphabet (64 characters).
-
ASCII
public static final Alphabet ASCII
The ASCII alphabet (0-127).
-
EXTENDED_ASCII
public static final Alphabet EXTENDED_ASCII
The extended ASCII alphabet (0-255).
-
UNICODE16
public static final Alphabet UNICODE16
The Unicode 16 alphabet (0-65,535).
-
-
Constructor Detail
-
Alphabet
public Alphabet(String alpha)
Initializes a new alphabet from the given set of characters.- Parameters:
alpha
- the set of characters
-
Alphabet
public Alphabet()
Initializes a new alphabet using characters 0 through 255.
-
-
Method Detail
-
contains
public boolean contains(char c)
Returns true if the argument is a character in this alphabet.- Parameters:
c
- the character- Returns:
true
ifc
is a character in this alphabet;false
otherwise
-
radix
public int radix()
Returns the number of characters in this alphabet (the radix).- Returns:
- the number of characters in this alphabet
-
lgR
public int lgR()
Returns the binary logarithm of the number of characters in this alphabet.- Returns:
- the binary logarithm (rounded up) of the number of characters in this alphabet
-
toIndex
public int toIndex(char c)
Returns the index corresponding to the argument character.- Parameters:
c
- the character- Returns:
- the index corresponding to the character
c
- Throws:
IllegalArgumentException
- unlessc
is a character in this alphabet
-
toIndices
public int[] toIndices(String s)
Returns the indices corresponding to the argument characters.- Parameters:
s
- the characters- Returns:
- the indices corresponding to the characters
s
- Throws:
IllegalArgumentException
- unless every character ins
is a character in this alphabet
-
toChar
public char toChar(int index)
Returns the character corresponding to the argument index.- Parameters:
index
- the index- Returns:
- the character corresponding to the index
index
- Throws:
IllegalArgumentException
- unless0 <= index < R
-
toChars
public String toChars(int[] indices)
Returns the characters corresponding to the argument indices.- Parameters:
indices
- the indices- Returns:
- the characters corresponding to the indices
indices
- Throws:
IllegalArgumentException
- unless0 < indices[i] < R
for everyi
-
main
public static void main(String[] args)
Unit tests theAlphabet
data type.- Parameters:
args
- the command-line arguments
-
-