public class BinNode<T> {
private BinNode<T> right;
public BinNode(BinNode<T> left, T x, BinNode<T> right) {
public void setValue(T x) {
public BinNode<T> getLeft() {
public BinNode<T> getRight() {
public void setLeft(BinNode<T> left) {
public void setRight(BinNode<T> right) {
return this.right != null;
return this.left != null;
public override String ToString() {
return this.value.ToString();
public static int CountLetter(BinNode<String> tr, char ch){
for(int i = 0; i<tr.getValue().Length; i++){
if(ch == tr.getValue()[i]){
return count + CountLetter(tr.getLeft(),ch) + CountLetter(tr.getRight(),ch);
public void PritAlphaBethCount(BinNode<String> tr){
for(char c = 'a'; c<='z'; c++){
Console.WriteLine(CountLetter(tr,c));
public static void Main()
Console.WriteLine("Hello World");