0 Be_With_I

尚未进行身份认证

暂无相关简介

等级
TA的排名 12w+

顺序存储二叉树

就一层一层,从左到右的添加到数组,但是遍历的时候还能实现原来二叉树的前序,中序,后序的遍历这就要求有一个数组下标和二叉树左右节点的对应关系。2n+1 n是下标, 结果是下标位置元素的左子节点。 都是操作数组的下标父节点是 (n-1)/2package a;public class ArrayTreeDemo { public static void main(String...

2020-02-20 15:04:18

二叉树的简单删除

public void del(int no) { if (root == null) { System.out.println("is null"); }else { if (root.no == no) { root=null; }else { ...

2020-02-20 11:10:09

过滤器的概述以及一些应用

当浏览器有一个请求的时候 。不管是请求html jsp servlet 我们都可以在请求到达之前就拦截。做统一的处理当有返回的时候,在,到达浏览器之前。我们也可以拦截一下。 做你想要的处理其实这个拦截器跟servlet 类似 也是由服务器自动调用。也是配置拦截的路径。如何写一个filter编写1,实现接口 Filter 是 java.servlet的接口2,要在web.xml...

2020-02-19 21:53:49

二叉树的前序,中序,后序查找

主要还是对递归的理解,查找和遍历都是用了两个递归,递归的查找总是先查找一个节点的最左边节点。每次递归都会打印左右两边的节点。其实有点像while循环,但是一个递归的方法中还包含着另一个递归。按照顺序执行package a;public class BinaryTreeDemo { public static void main(String[] args) { Her...

2020-02-19 10:21:09

二叉树的前,中,后序遍历

二叉树有跟链表相似的地方。也是要用到节点。前,中,后,是以自身的打印顺序为标准的。打印利用了递归。递归退出的条件就是没有连接的节点了 ,也就是左边和右边都没有,然后退出。 前序遍历就是先打印,并不用等弹栈中序呢,等到一个节点没有左边,开始打印自己,然后看相邻的另一个,另一个也是要等到左边没有才能打印自己。最终的一个只是打印自己,退出的条件决定的是,左边的先被打印,递归的方法就是决定次序。 ...

2020-02-18 22:02:29

二叉树的简介

因为数组在检索 某个值 效率很低或者是按照顺序插入某个值得时候,会整体移动 效率低链表的方式,插入某个值,删除都很快,但是检索一样很慢在有序的情况下,这两种在检索都很慢因此衍生出二叉树,来解决这个问题。节点:就是每一个对象的名称。根节点:叶子节点 : 一个是最初的,一个是最终的父节点和子节点 也是相对的。层路径 就是路线二叉树 也就是每个节点最多2个子节点满二叉树...

2020-02-18 15:14:01

自己实现hashTable

员工作为节点。然后建立链表。 存的数据是员工。所有的方法是链表的方法,数组只是调用。hash中只有一个是自己实现的就是index 散列。package a;import java.util.Scanner;public class MyHashTableDemo { public static void main(String[] args) { MyHashT...

2020-02-18 11:18:57

表单的重复提交问题

1.表单提交到一个servlet、然后servlet 转发到一个页面,浏览器看到了成功页面,因为是转发 在,服务器端处理,所以,浏览器的路径还是请求servlet的路径,此时如果刷新,就等于重新发了一次请求。重复提交了2.第二种情况是,由于网络慢或者是后台处理需要时间,没有 返回之前,又再次点击提交按钮。3.第三种,我先点返回,再点击提交。也算是重复提交。其实第三种就和第二种一样。第一种情况...

2020-02-17 19:16:49

斐波那契查找算法

f[k]-1 = f[k-1]-1 + f[k-2] - 1 +1 这个公式的由来 因为我们要找到分割的点, 用-1 我们可以将 整体分成三段了。 我们要用的是数据的长度。 也就是要 f[k-1]但是我们mid 的取值其实是下标。所以是 f[k-1] -1;先创建了 f[k]这么个数列,然后要让,数组的长度 = f[k]-1这样我们才能分割...

2020-02-17 23:47:01

session的常用api以及 路径问题

session.getId(); idsession.isNew(); 是不是新创建的session.getMaxInactiveInterval() 1800session.createTime();session.getLastAccessTime(); 都是1970到现在的毫秒数session.setAttribute(“username”,request.getParamer...

2020-02-17 16:17:15

对session的理解

session是一种保持会话的机制第一:由服务器自动创建,然后通过JSESSIONID:218490ASKJDFJLSAJKLFJL;这样的一种存储方式,放在cookie中的。第二:浏览器,保存cookie,第二次会传回来第三:服务器根据cookie中的 JSESSIONID判断是否创建session ,有了就不创建了。第四:cookie可以持久化,这个是cookie的特性。创建sess...

2020-02-17 09:40:33

插值查找算法

原来我们二分查找算法的时候是 sta+1/2(end-sta)现在这个插值是 sta+(value-arr[sta])/arr[end]-arr[sta]* (end-sta)通过比较,其实就是前边的 1/2变成了 那个值-最小值在最大值-最小值的比例注意:退出的条件。package a;public class InsertSearch { public static ...

2020-02-16 17:42:00

二分查找的一个小优化

返回结果换成list在找到这个结果后,把其加入list 并,继续找package a;import java.util.ArrayList;import java.util.Arrays;public class BaniarySearchDuplicate { public static void main(String[] args) { int[] ar...

2020-02-16 11:04:18

二分查找算法

这个算法要求数据必须是排好序的这次用的是递归实现。package a;public class BaniarySearch { public static void main(String[] args) { int[] arr = {9, 14, 34, 52, 80, 876}; int value = 877; int sta ...

2020-02-15 17:58:21

线性查找算法

就是遍历查找。用查找的值和数组逐一比较package a;public class LineSeek { public static void main(String[] args) {// int var = 8;// int [] arr = new int[var];// for (int i = 0; i < arr.le...

2020-02-15 17:26:42

基数排序

在800万数据的时候比希尔 要快 ,比快速 ,归并要快但是占内存空间过大,8000万,会造成堆溢出,现在写法不能比较负数需要创建一个二维数组用于排序,一个一位数组用于下标存储。package a;import java.util.Arrays;public class Radix { public static void main(String[] args) { ...

2020-02-14 15:02:19

归并排序

测试了速度比快速排序 慢一点点 ,主要特点是借助一个temp数组来保存顺序的数据。用递归分解合并。package a;import java.util.Arrays;public class Merge { static int count = 0; public static void main(String[] args) { int[] arr...

2020-02-14 09:54:38

快速排序

是冒泡排序的优化,利用递归,和分成两半交换的思想,数据中可以有重复,但是800万测试速度并不如希尔排序快,不知道为什么package a;import java.util.Arrays;public class Quick { public static void main(String[] args) { int[] arr = new int[8000000...

2020-02-13 15:10:45

用交换实现希尔排序

gap 是步长 步长是逐渐减少的。 最外层循环确定了步长,然后用中层循环进行遍历,就像之前的遍历一样,最下层的遍历控制比较的数据,为什么用- gap 呢,因为你要加会下标越界package a;import java.util.Arrays;public class Shell { public static void main(String[] args) { ...

2020-02-11 10:34:48

希尔排序用插入实现

在数据为8万的时候与插入排序速度差不多。在80万的时候明显拉开差距代码如下package a;import java.util.Arrays;public class InsetShell { public static void main(String[] args) {// int var = 8; int var = 800000; ...

2020-02-11 11:19:03

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周上午根据用户上周周三的博文发布情况由系统自动颁发。