
数据结构
canofy
这个作者很懒,什么都没留下…
展开
-
继续学习数据结构
链表,感觉链表=列表,不知道是不是这样,反正我看的那本书上应该是这样说的吧,链表分为了单链表,双链表,和循环链表。单链表应该只是从后到前的索引,是单向的,可以对链表头或链表尾进行增加和删除操作;循环链表是对单链表的最后一个元素加了一个索引指向链表头,还没有完全理解这一类型;而双链表,它的索引既可以是向前,也可以是向后的,也即previs()和next()方法,可以很方便的查找数据。 堆栈...2007-12-26 09:35:13 · 113 阅读 · 0 评论 -
获取一个 Byte 的各个 Bit 值(转)
1. bit:位 一个二进制数据0或1,是1bit;2. byte:字节 存储空间的基本计量单位,如:MySQL中定义 VARCHAR(45) 即是指 45个字节; 1 byte = 8 bit3. 一个英文字符占一个字节; 1 字母 = 1 byte = 8 bit4. 一个汉字占2个字节; 1 汉字 = 2 byte = 16 b...原创 2014-03-26 14:03:21 · 321 阅读 · 0 评论 -
java中byte转换int时为何与0xff进行与运算(转)
在剖析该问题前请看如下代码[code="java"]public static String bytes2HexString(byte[] b) { String ret = ""; for (int i = 0; i < b.length; i++) { String hex = Integer.toHexString(b[ i ] & 0xFF); if (he...原创 2014-03-26 14:02:00 · 188 阅读 · 0 评论 -
记得曾经做过的一道100个球的问题
有100个球,其中有个质量较轻,开始想了想用二分法来做,至少有7次,以为这是最优方案,今天上网突然之间看到原来可以用三分法来做,呵呵!方法如下:现在只有个天平,你最少用几次把球找出来1) 33-33 33 12) 16 16 13) 5 5 5 14) 2 2 15) 1 1...原创 2009-09-01 20:08:01 · 310 阅读 · 0 评论 -
B+树c实现代码
对c不懂,所以还看不太明白,B+树难点在于插入与删除操作参考地址:http://www.leftworld.net/wenzhang/show/1996.html http://www.sqlite.com.cn/MySqlite/6/373.Html这个结构一般用于数据库的索引,综合效率较高。另外还有一种与此类似的树结构叫B+树,像 Berkerly...原创 2009-07-02 18:16:06 · 1572 阅读 · 1 评论 -
B 树、 B- 树、 B+ 树、 B* 树都是什么
http://www.cppblog.com/qiujian5628/articles/42190.html[b][size=large]B树[/size][/b] 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字...原创 2009-06-30 11:40:54 · 107 阅读 · 0 评论 -
二叉树的java实现
网上看到的一个二叉树,自己放到myeclipse实现了一下,但具体的在什么场景下应用还不太清楚,网上也没有找到相应的文章介绍。又重新修改了一下,还是有些地方不太明白。在建立二叉树的时候传入的数组的顺序怎么确定?一个很困扰的问题![code="java"]package algorithm;import java.util.Stack;/** * May 27, 2009...原创 2009-06-05 17:07:15 · 111 阅读 · 0 评论 -
排序之合并排序(归并排序)
合并排序[code="java"]package algorithm;/** * May 26, 2009 * version 1.1 * @author qinshuangping */public class MergeSort { /** * 合并排序(也称归并排序) * 归并操作的工作原理如下(网上找的这个原理和这个例子似乎...原创 2009-05-26 17:46:54 · 150 阅读 · 0 评论 -
排序方法之---堆排序
[code="java"]package algorithm;/** * May 26, 2009 * version 1.1 * @author qinshuangping */public class HeapSorter { /** * 参考地址:http://blog.youkuaiyun.com/Tuzki/archive/2008/10/08...原创 2009-05-26 10:40:14 · 120 阅读 · 0 评论 -
Java的快速排序法
花了很久的时间才搞定,根据算法导论里面的伪代码写的最初在网上找的例子都有问题,不知为啥,都把我给搞晕了然后按伪代码来写,也出错,真是很郁闷然后全部删掉重新写了很多次,突然间就写好了主要难点在于partition函数,里面的i和j的关系,它们的值在什么时候进行交换可能是很久没有考虑过数据结构的东东了因此今天花了很多时间来做这个[code="java"]packag...原创 2009-05-24 19:04:07 · 168 阅读 · 0 评论 -
插入 选择 冒泡排序
[code="java"]package com.canofy.structure;import org.apache.log4j.Logger;public class Sort { static Logger logger=Logger.getLogger(Sort.class); //插入排序法 private static void insertSor...原创 2009-05-24 10:43:36 · 102 阅读 · 0 评论 -
数据结构一--------概念与算法
摘自:http://czk.8866.org/wiki/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E6%A6%82%E8%BF%B0[color=red][b]数据结构(包括逻辑结构,存储结构,运算)算法(时间复杂度,空间复杂度)[/b][/color][b][size=large]1.计算机是一种处理数据的机器[/size][/b]...原创 2009-05-17 10:50:17 · 137 阅读 · 0 评论 -
数据结构二---------线性表
线性表包括顺序表和链表,链表又包括单链表,双链表,循环链表,貌似是这样,呵呵顺序表查询起来会比较快,相当于java里面的ArrayList链表是插入或删除会比较快,相当于java里面的LinkedList以下内容摘自:http://czk.8866.org/wiki/%E7%BA%BF%E6%80%A7%E8%A1%A8线性表总结线性表是一种典型的线性结构,...原创 2009-05-17 10:30:36 · 142 阅读 · 0 评论 -
java中long,int,short与byte数组之间的转换
[code="java"]//long类型转成byte数组 public static byte[] longToByte(long number) { long temp = number; byte[] b = new byte[8]; for (int i = 0; i < b.length; i++) { ...原创 2014-03-26 14:10:38 · 261 阅读 · 0 评论