- 博客(21)
- 收藏
- 关注
原创 利用Collections类操作链表(排序,反转等)
链表的节点按照添加顺序存储且相同数据不覆盖,而树集的节点默认升序存储且覆盖相同数据(自定义对象可以实现Comparable接口并重写compareTo方法,并保留相同数据)。Collections类对List对象提供了用于排序、查找等操作的类方法如下: public static sort(List list):将list中的元素按升序排列; int binarySearch(
2015-10-04 16:42:54 807
原创 java集合框架之链表
链表的定义与结构就不详细介绍了。 链表的优点(即数组的缺点):1. 能动态改变大小,而数组大小固定;2. 不需要连续存储空间; 3. 数据的逻辑次序靠节点的引用变量来实现,不需要移动数据。 链表的缺点(即数组的优点):1. 链式存储结构,非随机存储,需要从表头逐个查找 2. 浪费存储空间,地址部分需要额外存储空间。 java.util包中的LinkedList泛型类创
2015-10-04 15:39:00 1214
原创 java集合框架之堆栈
堆栈是一种“后进先出”的数据结构,只在一端进行输入或输出。 java.util包中的Stack泛型类创建一个堆栈对象,调用public E push(E item)实现压栈操作,调用public E pop()实现出栈操作。 其他方法:public e peek()获取栈顶数据,但不删除该数据; public int Search(Object data)获取数据在堆栈中的位置
2015-10-04 13:56:45 629
原创 java自动装箱与拆箱
自动装箱与拆箱对应着java基本类型与其包装器类对象的自动转换过程。自动装箱:基本类型到相应对象的转换;自动拆箱:对象到基本类型的转换。import java.util.*;public class Main { public static void main(String[] args) { ArrayList list = new ArrayList(); for (i
2015-10-04 12:54:04 386
原创 利用树集进行数据排序
排序涉及对象的大小关系。String类实现了Comparable接口,规定字符串按字典序比较大小。而对于非字符串的其他数据,创建对象的类必须实现Comparable接口,即实现接口中的方法int compareto(Object b)来规定对象的大小关系,原因是sort方法在排序时需要调用名为compareTo的方法比较对象的大小关系。无论是collection类的static sort(List
2015-10-03 22:31:17 1015
原创 java链表的get方法遍历VS使用迭代器遍历
无论何种集合,应当允许用户以某种方式遍历集合,而不需要知道对象在集合中是如何表示及存储的,java集合框架为各种数据结构的集合,比如链表、散列表等都提供了迭代器。 某些集合根据其数据存储结构和所具有的操作也会提供返回数据的方法,例如LinkedList类中的get(int index)方法返回当前链表中第index个节点节点的对象。显然链表的get方法遍历比顺序表的get方法的速度慢。j
2015-09-30 15:05:55 2934
原创 行编辑器之堆栈法
1、如果收到一个‘#’,删掉一个已经收到的字符,不包括‘#’;2、如果收到一个‘@’,把收到的一整行删掉(‘#’和‘@’都是不可见字符)输入:3whli##ilr#e(s#*s)outcha@putchar(*s=#++)returnWA##A!!##C输出:while(*s)putchar(*s++)returnAC
2015-09-29 21:56:51 597
原创 斐波那契数列之堆栈法与递归法的耗时比较
递归很消耗内存(欢迎大神讲解下原理),而使用堆栈可以节省内存的开销。package 斐波那契数列_堆栈法与递归法比较;import java.util.*;public class Main { static int recursion(int n){ if(n==1) return 1; if(n==2) return 1; else return r
2015-09-29 21:51:29 1035
原创 倒置读出文本文件JAVA实现
预备知识:ASCII码(包括其扩展在内共256个)在UNICODE编码上的位置为0~255.ASCII码是单字节的,二UNICODE编码是双字节的。预备倒置读出的文本文件english.txt:The arrow missed the target.They rejected the union demand.Where does this road go to?imp
2015-08-16 22:57:18 3311 2
原创 dev c++无法调试的问题
解决方法:(1)tools->compiler option->settings->linker里设置Generatedebugging information为 YES(2)tools->compiler option->Add following commands when calling complier与Addthese commands to the linker comma
2015-06-01 21:45:07 1771 1
原创 华为机试题2014 字符串过滤程序 java实现
通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉。比如字符串“abacacde”过滤结果为“abcde”。import java.util.Scanner;public class test { public static void main(String[] args) { Scanner in=ne
2015-06-01 19:58:31 1334 1
原创 华为2014机试样题2:求最大递增数
题目简介: 描述:输入一串数字,找到其中包含的最大递增数。 递增数是指相邻的数位从小到大排列的数字。 如: 2895345323,递增数有:289,345,23, 那么最大的递减数为345。 运行时间限制:无限制内存限制:无限制输入: 输入一串数字,默认这串数字是正确的,即里面不含有字符/空格等情况输出 :输出最大递增数样例输入:123526897215样例输出:2689
2015-05-31 10:22:10 643
原创 华为2014机试样题1: 计票统计 java实现
(样题,已对外公布)记票统计描述:模拟n个人参加选举的过程,并输出选举结果:假设候选人有四人,分别用“A”、”B”、”C”、”D”表示,选举时开始计票, 若输入的不是“A”、”B”、”C”、”D”则视为无效票。选举结束后获取各个候选人的得票数以及无效票的个数,输出结果以添加候选人的顺序进行顺序输出,最后一行为无效的数量。同时getVoteResult命令为结
2015-05-29 09:34:05 1749
原创 正整数加减乘除四则混合运算求值方法 java实现
条件限定:1、 输入的四则运算式由'+','-','*','/'运算符及正整数组成;2、 无需考虑特殊字符、表达式语法错误及除不尽的情况;3、 无需考虑运算符的优先级,加减乘除优先级一样,仅按照自左至右的顺序依次计算;4、 计算的中间数据及最终结果都不会超过65535;5、 当遇到除数为0时,即刻返回当前已计算结果。例:输入:2+1*4-2/5 输
2015-05-28 09:38:37 3363 1
转载 为什么你写不好一个快速排序?关于
我常常在想,当初我若不离开完美,现在肯定也是总监级的title了,收入比现在高一倍不止。但是另一方面,在编码能力上我甚至不如某些刚毕业的本科生。比如,快速排序的算法我很熟悉,就一句话:“随机选一个元素,用它把输入集分成两半,对这两半继续递归,然后将递归得到(已排好序)的结果合并”。但几个月前看算法书的时候自己尝试写了一下快速排序,发现远远是另外一回事。虽然我对这个算法很清楚,但是用C++实现的时候
2015-04-24 14:45:12 885
原创 visual studio2013安装以及C与C++HelloWorld输出
vs2013安装没有任何难点,直接默认和next。安装后记得注册,不然只有30天的试用期。vs工具栏:帮助-注册产品-更改我的产品许可证(需要登录,microsoft账户即时注册一下就行),产品秘钥:BWG7X-J98B3-W34RT-33B3R-JVYW9c程序编写:新建项目-visual c++-win32控制台应用程序-在应用程序设置中勾上“空项目”-在源文件中添加“新建项”-c
2015-04-17 14:33:49 6501
原创 位图文件存储空间的计算
位图图像: 位图,又叫光栅图,是由许多像小方块一样的“像素”组成的图像。其放大或缩小都会使原有图像产生失真。 位图文件容量的计算: 800*600像素的黑白图像如何计算? 分析:一个像素可以存放黑或者白图像,所以每个像素就是一个比特。因此,可以算出这幅图像的容量为:800*600/8=60000(B) 如果换成256色的800*600的图像又该如何计算呢? 分析:256色也
2015-04-16 15:32:40 11696
转载 Java堆、栈和常量池以及相关String的详细讲解(经典中的经典)
一:在JAVA中,有六个不同的地方可以存储数据: 1. 寄存器(register)。 这是最快的存储区,因为它位于不同于其他存储区的地方——处理器内部。但是寄存器的数量极其有限,所以寄存器由编译器根据需求进行分配。你不能直接控制,也不能在程序中感觉到寄存器存在的任何迹象。 ------最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2.
2015-04-16 14:13:14 478
翻译 matlab当前目录下的相对路径
当前路径下 (mat和m文件在一起): load ***.mat; 在下一级路径下: load .\下一级路径的文件名\***.mat; 在上一级路径下: load ..\***.mat; 在平行文件夹内: load ..\平行的文件夹\***.mat;例如例如 当前目录下有个SVR文件夹,想要加载其中的ys.mat但又不想进入这个文件夹,
2014-01-17 15:45:10 19254 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人