欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

1号店垃圾酱油 J#数据结构算法 

程序员文章站 2022-07-12 11:02:51
...

    最近频繁打酱油,1号店得酱油最为扯淡。首先是一个很戳很戳的HR大妈唧唧歪歪,什么都说不上来,没几分钟就顶不住了让我们问问题,稀稀拉拉的童鞋们问了几个问题HR都给出了很戳的答案。然后几个HR实习生(更戳)发了行政测试卷子,靠居然有16页,我.....!

    一个小时后,悲催的行政做完发技术,都是英文。考的比较基础:主要是java基础,数据结构和数据库。本来对1号店没有什么恶意,但是接触的人实在太戳了。下面是考的一些题目

 

1. 内部类

public   class  test {

public   static   void  main(String[] args){

class  Foo{

public   int   i =3;

}

Object o = (Object) new  Foo();

Foo foo = (Foo)o;

System. out .println( "i = "  + foo. i );

}

}

3

 

2

. public   class  test {

public   static   void  main(String[] args){

int  i=1, j =10;

do {

if (i++>-- j ){

continue ;

}

} while (i<5);

System. out .println( "i= " +i+  "and j= " + j );

}

}

i=5,j=6;

 

3. 请解释一下什么叫做二叉树,平衡二叉树?针对一个数组,如何把里面的元素构造成二叉树?

二叉树 (binary tree)  是另一种树型结构,它的特点是每个结点至多只有二棵子 树  ( 即二叉树中不存在度大于  2 的结点  ) ,并且,二叉树的子树有左右之分,其次序不能任意颠倒  二叉树是一种数据结构

平衡二叉树(Balanced Binary Tree )又被称为 AVL 树(区别于 AVL 算法,且具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过 1 ,并且左右两个子树都是一棵平衡二叉树。

用对分法构建:

序号为n/2 处的元素作为根节点,剩余小的部分递归用对分法构建左子树,大的部分递归用对分法构建右子树

 

4. 给定一个随机数列,比如{1,2,5,9,3,7,8,10,13} ,如何找出所有数字对,其和是给定数字 n, 比如 n=10, 那么数字对应该是 1,9;3,7;2,8;

public   class  test {

public   static   void  main(String[] args){

int [] sj={1,2,5,9,3,7,8,10,13};

int  i=0; int  j=0;

for (i=0;i<8;i++){

   for (j=i+1;j<9;j++){

   if (sj[i]+sj[j]==10){

   System . out .println( "数字对为:" +sj[i]+ "," +sj[j]);

  }

  }

}

}

}