- 博客(19)
- 收藏
- 关注
原创 hash存储
采用拉链法进行存储#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>//创建链表节点typedef struct node{ int data; struct node *next;}ElemSN;ElemSN** hash(int data[], int n, int len){
2017-08-29 20:40:31 246
原创 字节流文件复制
package com.xiaorenwu.iotest;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.BufferedReader;import java.io.FileInputStream;import java.io.FileNotFoundException
2017-08-26 12:33:27 168
原创 重写readline方法
package com.xiaorenwu.iotest;import java.io.FileReader;import java.io.IOException;public class ReadLine1 { //声明一个字符数组当做缓冲区 private char buf[] =new char[1024]; //声明一个字符数组指针用于标记位置 privat
2017-08-26 11:21:32 544
原创 文件复制
package com.xiaorenwu.iotest;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOE
2017-08-26 11:20:56 168
原创 泛型
概念: jdk 1.5出现的安全机制。 好处: 1,将运行时期的问题ClassCastException转到了编译时期。 2,避免了强制转换的麻烦。 <>: 当操作引用数据类型不确定的时候,使用泛型,将要操作的引用数据类型传入即可 其实<>就是一个用于接收具体引用数据类型的参数范围。 在程序中只要用到了带有<>的类或者接口,就要明确传入具体的应用数据类型。 泛型的原理: 方形技术
2017-08-24 13:00:29 166
原创 Map集合
Map: 一次添加一对元素,(Collection)一次添加一个元素。 Map也称双列集合,Collection集合称为单列集合。 其实map集合中存储的就是键值对。 map集合中必须保证健的唯一性。 常用方法 1.添加 value put(key,value) 返回一个前一个和key关联的值。如果没有返回null. 2.删除 void clear() 清空map集合。 va
2017-08-22 18:25:58 134
原创 Set集合
Set元素不可以重复,是无序的。 Set 接口的方法和Collection一致。 |——-HashSet: 内部数据结构是哈希表,是不同步的。 是通过HashCode和equals方法来完成判断对象的唯一性。 如果对象的hashcode值不同,不用判断equals方法。 如果对象的hashcode值相同,则判断equals方法是否为true。 如果为true,视为元素相同
2017-08-22 14:58:15 216
原创 ArrayList在内存中的存储方式(图解)
例如要存入集合的对象如下: ArrayList al=new ArrayList(); al.add(new ArrayList(11,"nihao")); al.add(new ArrayList(12,"tianchao"));内存图解如下: 首先,在堆中创建一个集合对象(默认初始容量为10),地址指向 al 在集合中添加元素并不是在集合中直
2017-08-21 15:54:18 5101
原创 异常处理
异常 概念:是指运行时期发生的不正常情况。 在Java中用类的形式对不正常情况进行描述和封装对象。 描述不正常的类称为异常类 用异常进行描述(不同的问题用不同的类进行具体描述)将其共性向上抽取形成异常体系。 最终分为两大类: 1.一般不可以处理的。Error 2.可以处理的。 exception 该体系的特点: Throwable及其所有的子类都具有可抛性。 关键字
2017-08-17 23:04:01 182
原创 单例设计模式
解决的问题: 可以保证一个类在内存中对象的唯一性。 例如:对于多个程序使用同一个配置信息对象时,就必须保证该对象的唯一性。 保证对象的唯一性: 1、不允许其他程序用new创建该类的对象。 2、在该类创建一个本类的实例。 3、对外提供一个方法让其他程序可以获取该对象。 步骤: 1、私有化该类的构造函数。 2、通过new 在本类中创建一个本类对象。 3、定义一个公有的方法,将创建的对
2017-08-17 15:17:48 125
原创 Java中的三个代码块
静态代码块: 随着类的加载而执行而且只执行一次 (一般情况下,静态代码块用于静态类中) 作用:用于给类进行初始化。 局部代码块: 用于给对象进行初始化 所以每创建一个对象,执行一次局部代码块 构造函数和局部代码块的区别: 构造函数具有针对行—–>针对不同的对象调用不同的构造函数 局部代码块具有普遍性—>对任何对象的初始化方式都是相同的静态代码块、局部代码块、构造函数的先后执行顺序:
2017-08-16 23:17:07 219
原创 static关键字
static关键字(静态): static特点: 1、static是修饰符,用来修饰成员。 2、static修饰的成员,被所有对象共享。 3、static优先于对象的存在,因为static成员随着类的加载就已经存在了。 4、static修饰的成员多了一种调用方式,可以直接被类名所调用。格式:类名.成员 5、static修饰的数据是共享数据,对象中的存储是特有数据。 成员变量和静态变量的
2017-08-15 09:43:18 162
原创 java中的this关键字
当成员变量和局部变量重名时,可以采用this关键字来进行区分。 this 指所在函数所属对象的引用, 通俗的将就是:那个对象调用了this所在的函数,this就代表那个对象 eg:class Person{ int age; String name; Person(int age) { this.age=age; } Pers
2017-08-14 16:39:27 268
原创 构造函数栈溢出
最近刚刚学习java EE。 老师让我们做一个“购物系统” 在用户登录页面那个板块我是这样写的: private final int CAP = 10;// 最大注册量 private String userName;// 用户名 private String userPassword;// 用户密码 private User[] user = new User[C
2017-08-12 15:23:34 514
原创 判断两个链表是否交叉
判断两个链表是否交叉,如果交叉,返回交叉节点的地址,如果没有交叉,返回NULL 算法思想: 比较两条链表的尾节点,如果节点地址相同,则比较前驱节点的地址,以此类推,直到节点的地址不同或者两条链表比较完毕。 如果出现地址不同,返回该链表节点的后继地址 如果地址相同,说明该两条链表是同一个链表,返回头结点ElemSN* Jud_Same_Node(ElemSN *h1,ElemSN *h2){
2017-08-09 16:38:55 699
原创 将一个链表进行降序排列
题目:设head指向一个非空单向链表。将该链表的数据值进行降序排列 算法思路: 通过循环找到链表中的最小值,将最小值从链表中移除,利用头插的方式重新创建一个链表,即得到将序排列的链表。ElemSN* desSort(ElemSN *h){ ElemSN *hn = NULL, *p = NULL, *q = NULL, *pmin = NULL,*qmin=NULL; whil
2017-08-08 17:10:29 4081
原创 将奇数节点移动至偶数节点之前
题目:设head 指向一个非空单向链表,将所有奇数节点移动至偶数节点之前 算法思想: 遍历链表的数据域,找到奇数节点,将奇数节点从链表中移除, 重新创建一个“奇数链表” 在将奇数链表头插到原来的链表中ElemSN* moveOddToEvenAhead(ElemSN *h){ ElemSN *p = NULL, *q = NULL, *hn = NULL,*t=NULL;
2017-08-08 16:16:58 975
原创 将链表中数据域为key 的节点删除(链表有重复值)
算法思路: 链表中数据域为key 的节点可能是头结点,和中间尾节点。要分别进行讨论。 删除链表的头结点: 挪头指针, 将节点删除, 将原来指向删除节点的指针指向现在的头结点 删除链表的中间尾节点: 将要删除的链表节点从链表中移除 删掉要删除的节点 将原来指向删除节点的指针指向新位置 注意: 使用两指针联动进行遍历链
2017-08-08 15:07:51 1102
原创 链表节点查找
在一个非空单向链表中(数据域的值没有重复)找到值为key的节点, 找到则返回节点的地址,否则返回nullElemSN* FindNode(ElemSN *h,int key){ ElemSN *p; for (p = h; p; p = p->next) { if (p->data == key) { break;
2017-08-08 14:12:38 1397
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人