Package weka.core.neighboursearch.covertrees

# Class Stack<T>

java.lang.Object
weka.core.neighboursearch.covertrees.Stack<T>

Type Parameters:
  `T` - The type of elements to be stored in the stack.

All Implemented Interfaces:
  `Serializable`, `RevisionHandler`

public class Stack<T> extends Object implements Serializable, RevisionHandler
Class implementing a stack.

Version:
  $Revision: 1.3 $
Author:
  Alina Beygelzimer (original C++ code), Sham Kakade (original C++ code), John Langford (original C++ code), Ashraf M. Kibriya (amk14[at-the-rate]cs[dot]waikato[dot]ac[dot]nz) (Java port)
See Also:
  - Serialized Form

## Field Summary

Fields
Modifier and Type
Field
Description
`ArrayList<T>`
`elements`
The elements inside the stack.
`int`
`length`
The number of elements in the stack.

## Constructor Summary

Constructors
Constructor
Description
`Stack()`
Constructor.
`Stack(int capacity)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`void`
`addAll(Collection c)`
Adds all the given elements in the stack.
`void`
`clear()`
Removes all the elements from the stack.
`T`
`element(int i)`
Returns the ith element in the stack.
`String`
`getRevision()`
Returns the revision string.
`T`
`last()`
Returns the last element in the stack.
`T`
`pop()`
Pops (removes) the first (last added) element in the stack.
`void`
`push(T new_ele)`
Pushes the given element to the stack.
`void`
`push(Stack<T> v, T new_ele)`
Pushes the given element onto the given stack.
`void`
`replaceAllBy(Stack<T> s)`
Replace all elements in the stack with the elements of another given stack.
`void`
`set(int i, T e)`
Sets the ith element in the stack.
`List`
`subList(int beginIdx, int uptoLength)`
Returns a sublist of the elements in the stack.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### length

public int length
The number of elements in the stack.

### elements

public ArrayList<T> elements
The elements inside the stack.

## Constructor Details

### Stack

public Stack()
Constructor.

### Stack

public Stack(int capacity)
Constructor.

Parameters:
  `capacity` - The initial capacity of the stack.

## Method Details

### last

public T last()
Returns the last element in the stack.

Returns:
  The last element.

### element

public T element(int i)
Returns the ith element in the stack.

Parameters:
  `i` - The index of the element to return.
Returns:
  The ith element.

### set

public void set(int i, T e)
Sets the ith element in the stack.

Parameters:
  `i` - The index at which the element is to be inserted.
  `e` - The element to insert.

### subList

public List subList(int beginIdx, int uptoLength)
Returns a sublist of the elements in the stack.

Parameters:
  `beginIdx` - The start index of the sublist.
  `uptoLength` - The length of the sublist.
Returns:
  The sublist starting from beginIdx and of length uptoLength.

### clear

public void clear()
Removes all the elements from the stack.

### addAll

public void addAll(Collection c)
Adds all the given elements in the stack.

Parameters:
  `c` - The collection of elements to add in the stack.

### replaceAllBy

public void replaceAllBy(Stack<T> s)
Replace all elements in the stack with the elements of another given stack. It first removes all the elements currently in the stack, and then adds all the elements of the provided stack.

Parameters:
  `s` - The stack whose elements should be put in this stack.

### pop

public T pop()
Pops (removes) the first (last added) element in the stack.

Returns:
  The poped element.

### push

public void push(T new_ele)
Pushes the given element to the stack.

Parameters:
  `new_ele` - The element to be pushed to the stack.

### push

public void push(Stack<T> v, T new_ele)
Pushes the given element onto the given stack.

Parameters:
  `v` - The stack onto push the element.
  `new_ele` - The element to push.

### getRevision

public String getRevision()
Returns the revision string.

Specified by:
  `getRevision` in interface `RevisionHandler`
Returns:
  the revision