Leetcode笔记(整理中.......)
2015-10-21 10:43
190 查看
1、树的层序遍历
使用两个List 数组 或者 两个queue队列,交替进行,将遍历到的一层放在第一个里面,之后再将遍历到的第二层放在第二个里面。
2、将一个无符号整数的二进制表示形式逆向输出
需要将int n(每次向右移一位)的每一位从右向左与1相与(int 1每次向左移动一位),存储结果每次向左移动一位(若 n的当前位为1,则将answer与1相或),直到n的每一位都被遍历到。
3、求一个无符号整数的二进制表示中,1的个数
可以利用2中的方法,每次将整数n的当前位与1相与,若结果为1,则count+1,直到n的所有位都被遍历到为止。
java中移位运算符就是在二进制的基础上对数字进行平移。按照平移的方向和填充数字的规则分为三种:<<(左移)、>>(带符号右移)和>>>(无符号右移)。
4、对于一个整型数组 int[] nums,求其所有数字连接成为一个整数字符串后,得到的字符串结果的最大值
利用java中自带的 Arrays.sort() 方法,对字符串数组进行排序(将整型数组转换为字符串数组),由于这种排序不是简单的比较大小,而是比较出两个字符串连接后的排序结果使得两者的连接字符串最大。因此,需要改写 compare方法, Comparator<String> comp=new Comparator<String>(){重写compare方法}; 最后将排序得到的字符串数组从高位到低位进行连接后输出。
5、List<T> list=new ArrayList<T>(); Queue<T> queue=new LinkedList<T>(); 在java中,List和Queue都是容器
使用两个List 数组 或者 两个queue队列,交替进行,将遍历到的一层放在第一个里面,之后再将遍历到的第二层放在第二个里面。
2、将一个无符号整数的二进制表示形式逆向输出
需要将int n(每次向右移一位)的每一位从右向左与1相与(int 1每次向左移动一位),存储结果每次向左移动一位(若 n的当前位为1,则将answer与1相或),直到n的每一位都被遍历到。
3、求一个无符号整数的二进制表示中,1的个数
可以利用2中的方法,每次将整数n的当前位与1相与,若结果为1,则count+1,直到n的所有位都被遍历到为止。
java中移位运算符就是在二进制的基础上对数字进行平移。按照平移的方向和填充数字的规则分为三种:<<(左移)、>>(带符号右移)和>>>(无符号右移)。
4、对于一个整型数组 int[] nums,求其所有数字连接成为一个整数字符串后,得到的字符串结果的最大值
利用java中自带的 Arrays.sort() 方法,对字符串数组进行排序(将整型数组转换为字符串数组),由于这种排序不是简单的比较大小,而是比较出两个字符串连接后的排序结果使得两者的连接字符串最大。因此,需要改写 compare方法, Comparator<String> comp=new Comparator<String>(){重写compare方法}; 最后将排序得到的字符串数组从高位到低位进行连接后输出。
5、List<T> list=new ArrayList<T>(); Queue<T> queue=new LinkedList<T>(); 在java中,List和Queue都是容器
相关文章推荐
- maven 整理记录
- iOS中Bitcode的介绍及配置
- 利用netfilter hook开发llinux后门rootkit程序
- 正则 /u ,/i ,/s ,/m
- docker1.9源码分析(五):server分配handler提供服务的流程
- iOS:弹出窗控制器:UIPopoverController
- Step by Step iOS Project In Action - 视图控制器
- c++ List、Vector、Stack、Queue使用
- IOS -UIButton设置边框颜色
- Linux文件的隐藏属性
- usr/bin/env python 和 usr/bin/python
- C++的一些学习技巧!
- HashMap的两种排序方式
- LPV(Light Propagation Volumes)
- Linux系统的dd命令使用教程
- MyEclipse 清理项目缓存的几大方法
- 马上要向华尔街交成绩单,于是 “四面楚歌” 的百度停止了社招
- 我的个人管理系统【理论篇】
- Alcatraz用来管理xcode插件
- Hadoop介绍