a575963da9
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
48 lines
647 B
C#
48 lines
647 B
C#
using System;
|
|
using System.Collections.Generic;
|
|
|
|
public interface INode<K> : IComparable<K> where K : IComparable<K>
|
|
{
|
|
K Key {
|
|
get;
|
|
}
|
|
}
|
|
|
|
public interface IBTNode<C> where C : IBTNode<C>
|
|
{
|
|
C Parent {
|
|
get;
|
|
set;
|
|
}
|
|
|
|
C Left {
|
|
get;
|
|
set;
|
|
}
|
|
|
|
C Right {
|
|
get;
|
|
set;
|
|
}
|
|
}
|
|
|
|
public interface IBSTNode<K, C> : IBTNode<C>, INode<K>
|
|
where C : IBSTNode<K, C> where K : IComparable<K>
|
|
{
|
|
}
|
|
|
|
public interface IAVLNode<K, C> : IBSTNode<K, C>
|
|
where C : IAVLNode<K, C> where K : IComparable<K>
|
|
{
|
|
int Balance {
|
|
get;
|
|
set;
|
|
}
|
|
}
|
|
|
|
class X
|
|
{
|
|
public static void Main ()
|
|
{ }
|
|
}
|