自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 树的广度优先遍历

广度优先只要找到当前深度的所有节点并访问就行:public static void getValueG(TreeNode node, Listint> outArr)//广度优先    {        QueueTreeNode> queue = new QueueTreeNode>();        TreeNode p = node;        if (node

2017-06-05 17:36:03 227

原创 树的后序遍历

遍历:循环所有元素访问:访问一个实例null!=0,一个实例为null,说明这个实例没有任何引用,而不是为0;树的后序遍历:顺序:左子树=>右子树=>根非递归方法:通过栈来实现先序遍历的顺序对于任一结点P,将其入栈,然后沿其左子树一直往下搜索,一直找到没有左子树的时候,上一个入栈的节点是该节点的父节点,需要一个变量来记录这个节点的出现次数,而此时该结

2017-06-05 17:34:52 1405

原创 树的中序遍历

对于任一结点P,1.若其左孩子不为空,则将P入栈并将P的左孩子置为当前的P,然后对当前结点P再进行相同的处理;2.若其左孩子为空,则取栈顶元素并进行出栈操作,访问该栈顶结点,然后将当前的P置为栈顶结点的右孩子;3.直到P为NULL并且栈为空则遍历结束非递归方法:public static void getValueTWithLoop(TreeNode node,

2017-06-05 17:33:17 348

原创 树的先序遍历

先序遍历顺序:根=>左=>右对于任一结点P:1.访问结点P,并将结点P入栈;2.判断结点P的左孩子是否为空,若为空,则取栈顶结点并进行出栈操作,并将栈顶结点的右孩子置为当前的结点P,循环至1);若不为空,则将P的左孩子置为当前的结点P;3.直到P为NULL并且栈为空,则遍历结束所以:(1)先将根节点入栈,并访问(2)判断是否有左子树,

2017-06-05 17:32:26 1089

原创 67. Add Binary

题意:就是把两个string的二进制数相加难点:记得进位和按位相加就好解法:int len1 = a.Length - 1;//数组1的长度            int len2 = b.Length - 1;//确定数组2的长度            int carry = 0;//进位数            char[] nums1 = a.ToCharArray(

2017-06-01 19:35:10 138

原创 判断一个整数的二进制数里有几个1

思路: 先把整数(十进制)转为二进制来处理吧,比如n=10,二进制为1010方法1:最简单的当然是转成二进制后一位一位的比较。int count = 0;string a=Convert.ToString(n, 2);//C#的进制转化a.ToCharArray();for (int i=0;ia.Length;i++){if (a[i]=='1'){ co

2017-06-01 19:28:03 1700

原创 逻辑运算

非运算:1=!0;或运算:1||1=1;1||0=1;0||1=1;0||0=0;与运算:1&1=1;1&0=0;0&1=0;0&0=0;异或运算:0 ^ 0=0;1 ^ 0=1;0 ^ 1=1;1 ^ 1=0;z=x^y表示x和y按位异或得z;&&和||比&和|高效

2017-06-01 19:24:15 148

原创 for,while循环,if判断格式

for(表达式;条件;循环式)可省略为for(;;){中间循环程序;}第一个是for循环起始执行的代码段,第二个是for循环判断的条件,第三段是每次循环完一次之后执行的代码段while(循环条件){循环程序;跳出代码;}if(表达式/条件)//如果程序满足if条件,执行if,不满足则执行else{循环程序}else(表达式)

2017-06-01 19:22:53 503

原创 关于char直接取数字

char里面实际上是“ASCLL码+‘数字字符’”内容为数字的char,包含0,1,2,3,4,5,6,7,8,9共计10个字符。这十个字符在存为字符型时,其存储值为对应的ASCLL码,而这些ASCLL码是连续的,而且按照其本身数字的大小来排列。这样就可以通过“ 字符值-起始ascii码值” 实现转为对应值的效果。例子:int a;char numbe=‘7’;nu

2017-06-01 19:21:12 6325

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除