JAVA
文章平均质量分 54
我为老师建博客
这个作者很懒,什么都没留下…
展开
-
JAVA栈的简单实现
package wanghm;class Stack{ int [] nums = new int[1]; int count; int capacity; Stack() { nums[0] = 0; count = 0; capacity = 1; } private void addCapacity() { int [] cur = new int[2原创 2017-07-17 23:38:46 · 201 阅读 · 0 评论 -
JAVA的String类 (转)
String类 1、String对象的初始化由于String对象特别常用,所以在对String对象进行初始化时,Java提供了一种简化的特殊语法,格式如下: String s = “abc”; s = “Java语言”;转载 2017-07-19 23:57:55 · 237 阅读 · 0 评论 -
aslist 和 toArray 的探究
aslist 和 toArray 用来完成Array和List的转换,用法有一些需要注意的。1.aslistArray都过调用aslist函数转换成list,但要注意,数组中元素的类型不可以是基本类型。如下列代码会报错。int a [] = {6, 2, 1, 3};List list1 = Arrays.asList(a);应该改为Integer a [] = {6原创 2017-07-28 11:20:35 · 261 阅读 · 0 评论 -
JAVA实现五种排序算法
用JAVA实现冒泡排序、选择排序、插入排序、快速排序和归并排序。封装在sort类中。class Sort{ /* 辅助函数 */ //Java没有引用,利用数组来完成值的交换 void swap(int a[], int i, int j) { int c = a[i]; a[i] = a[j]; a[j] = c; } //输出数组 void print(int a原创 2017-08-22 00:49:44 · 333 阅读 · 0 评论 -
513. Find Bottom Left Tree Value (vector & queue)
这道题要求二叉树最下边一层的最左边的节点,是一道比较简单的题。主要当作给Java练习了。首先是第一个版本:主要思想就是从根节点开始,逐步求下一层的节点,并替换到nodes中。如果发现下一层的节点(用temp来临时存储)是空的,就说明到了最后一层。results来标记每一层最左边的节点,最后就是结果。import java.util.*;class Solution {原创 2017-09-05 00:36:12 · 292 阅读 · 0 评论 -
46. Permutations (list)
求一组不重复数的所有排列,用回溯法来遍历,不过这种回溯不需要回头。大概思路就是用一个递归函数,每次选择一个之前没选过的数加入到当前list中,最后如果选完了所有的数,加入到结果中。算法并不难,主要是语法上遇到一些问题,比如关于list的使用。总结:1. list > 这种二维的list,声明的时候还是和一维一样results = new ArrayList2.将一个list原创 2017-09-08 10:47:12 · 272 阅读 · 0 评论 -
47. Permutations II
这道题是上一题的进阶,这次数组中可能有重复的数,导致排列的结果会有重复。那么怎么解决重复的问题呢?仔细想一想,重复是因为:要排列N个数,每次迭代排一个,总共N次迭代。如果在某一个位置上,我选了数X(X1),而X不只有一个,后面某个位置我选了另一个X(X2),这是情况1。如果我在第一次的位置上选了X2,在后面的那个位置上选X1,就跟情况1重复了。真正的原因是我们在同一个位置上,选了两原创 2017-09-09 13:09:52 · 178 阅读 · 0 评论 -
Java socket简单聊天demo
实现效果:服务器等待客户端的连接,然后开始聊天。(理想的效果应该是服务器做echo,客户端和客户端聊)。注意事项:内部类是动态的,main函数是静态的,不能直接在main中new一个内部类,需要实例化main所在的类。服务器:package wanghm;import java.io.*;import java.net.*;import java.util.Scanne...原创 2019-03-04 15:30:59 · 419 阅读 · 0 评论 -
[排序]O(logN)空间复杂度排序(不修改原数组)
主要用选择排序的方法,每次选择最小值输出,通过计最小值出现的次数来解决数组中重复值的问题。时间复杂度比较高,来换取比较低的空间复杂度(没有申请别的空间,空间复杂度是O(1)?),并且不修改原数组,直接输出。public void sort(int [] nums){ int count = 0, min = nums[0], min_cnt = 0, pre = -1; ...原创 2019-05-11 00:15:44 · 328 阅读 · 0 评论