yyyyyyyyyyyyyyyyyyyy

博客园 首页 新随笔 联系 订阅 管理

随笔分类 -  算法,数据结构

上一页 1 2 3

摘要:算法学习算法可是计算机编程的灵魂哦,很多初级程序员觉得平时很少用到算法,也觉得算法不重要,其实那是大错特错。算法时时刻刻影响着我们编写的代码,实现同样的功能高手写的程序可能只需要1秒钟的运行时间就可以求解,刚入道的程序员可能写的代码需要花费100秒才能求解,差异是何其之大!再说,即使平时编程真的很少... 阅读全文
posted @ 2015-12-23 16:51 xxxxxxxx1x2xxxxxxx 阅读(498) 评论(0) 推荐(0)

摘要:算法一 1)将长网址md5生成32位签名串,分为4段, 每段4个字节(即32位);2)对这四段循环处理, 取4个字节(32位), 将他看成16进制串与0x3fffffff(30位1)与操作, 即超过30位的忽略处理;3)这30位分成6段, 每5位的数字作为字母表的索引取得特定字符, 依次进行获得6位... 阅读全文
posted @ 2015-11-15 05:52 xxxxxxxx1x2xxxxxxx 阅读(196) 评论(0) 推荐(0)

摘要:1、根据质数的定义求 质数定义:只能被1或者自身整除的自然数(不包括1),称为质数。 利用它的定义可以循环判断该数除以比它小的每个自然数(大于1),如果有能被它整除的,则它就不是质数。对应代码是:void printPrime(int n){//判断n是否是质数 booleanisPrime=t... 阅读全文
posted @ 2015-09-14 01:58 xxxxxxxx1x2xxxxxxx 阅读(669) 评论(0) 推荐(0)

摘要:数据结构Java实现02----线性表与顺序表【正文】本节内容:线性结构线性表抽象数据类型顺序表顺序表应用一、线性结构:如果一个数据元素序列满足:(1)除第一个和最后一个数据元素外,每个数据元素只有一个前驱数据元素和一个后继数据元素;(2)第一个数据元素没有前驱数据元素;(3)最后一个数据元素没有后... 阅读全文
posted @ 2015-09-09 22:14 xxxxxxxx1x2xxxxxxx 阅读(170) 评论(0) 推荐(0)

摘要:数据结构Java实现03----单向链表的插入和删除文本主要内容:链表结构单链表代码实现单链表的效率分析一、链表结构: 概念: 链式存储结构是基于指针实现的。我们把一个数据元素和一个指针称为结点。 数据域:存数数据元素信息的域。 指针域:存储直接后继位置的域。 链式存储结构是用指针... 阅读全文
posted @ 2015-09-09 22:13 xxxxxxxx1x2xxxxxxx 阅读(327) 评论(0) 推荐(0)

摘要:数据结构Java实现04----循环链表、仿真链表单向循环链表双向循环链表仿真链表一、单向循环链表:1、概念:单向循环链表是单链表的另一种形式,其结构特点是链表中最后一个结点的指针不再是结束标记,而是指向整个链表的第一个结点,从而使单链表形成一个环。和单链表相比,循环单链表的长处是从链尾到链头比较方... 阅读全文
posted @ 2015-09-09 22:12 xxxxxxxx1x2xxxxxxx 阅读(231) 评论(0) 推荐(0)

摘要:本文包含链表的以下内容: 1、单链表的创建和遍历 2、求单链表中节点的个数 3、查找单链表中的倒数第k个结点(剑指offer,题15) 4、查找单链表中的中间结点 5、合并两个有序的单链表,合并之后的链表依然有序【出现频率高】(剑指offer,题17) 6、单链表的反转【出现频率最高】(... 阅读全文
posted @ 2015-09-09 22:11 xxxxxxxx1x2xxxxxxx 阅读(216) 评论(0) 推荐(0)

摘要:数据结构Java实现06----中缀表达式转换为后缀表达式本文主要内容:表达式的三种形式中缀表达式与后缀表达式转换算法一、表达式的三种形式:中缀表达式:运算符放在两个运算对象中间,如:(2+1)*3。我们从小做数学题时,一直使用的就是中缀表达式。后缀表达式:不包含括号,运算符放在两个运算对象的后面,... 阅读全文
posted @ 2015-09-09 22:10 xxxxxxxx1x2xxxxxxx 阅读(142) 评论(0) 推荐(0)

摘要:数据结构Java实现05----栈:顺序栈和链式堆栈一、堆栈的基本概念:堆栈(也简称作栈)是一种特殊的线性表,堆栈的数据元素以及数据元素间的逻辑关系和线性表完全相同,其差别是线性表允许在任意位置进行插入和删除操作,而堆栈只允许在固定一端进行插入和删除操作。先进后出:堆栈中允许进行插入和删除操作的一端... 阅读全文
posted @ 2015-09-09 22:10 xxxxxxxx1x2xxxxxxx 阅读(325) 评论(0) 推荐(0)

摘要:数据结构Java实现07----队列:顺序队列&顺序循环队列、链式队列、顺序优先队列一、队列的概念: 队列(简称作队,Queue)也是一种特殊的线性表,队列的数据元素以及数据元素间的逻辑关系和线性表完全相同,其差别是线性表允许在任意位置插入和删除,而队列只允许在其一端进行插入操作在其另一端进行删除... 阅读全文
posted @ 2015-09-09 22:09 xxxxxxxx1x2xxxxxxx 阅读(256) 评论(0) 推荐(0)

摘要:在 thinking in java中看到过说Stack类继承于Vector,而这两个类都不推荐使用了,但是在做一到OJ题时,我用LinkedList来模拟栈和直接用Stack,发现在进行入栈出栈操作时Stack的速度竟然还快一点 然而需要多线程的时候有Collections.synchronize 阅读全文
posted @ 2015-09-09 22:09 xxxxxxxx1x2xxxxxxx 阅读(315) 评论(0) 推荐(0)

摘要:OpenCCOpenCC 是跨平台、多语言的开放中文转换库,除了基本的简繁转换功能外,用户还可以选择对不同用词习惯和异体字的处理方式。OpenCC 还提供方便的网页转换界面。OpenOffice.Org的转换功能OpenOffice.Org提供简繁功能,使用很方便(在工具->语言->中文简繁转换)。... 阅读全文
posted @ 2015-07-26 04:01 xxxxxxxx1x2xxxxxxx 阅读(892) 评论(0) 推荐(0)

摘要:数据结构之图(存储结构、遍历)一、图的存储结构 1.1 邻接矩阵 图的邻接矩阵存储方式是用两个数组来表示图。一个一维数组存储图中顶点信息,一个二维数组(邻接矩阵)存储图中的边或弧的信息。 设图G有n个顶点,则邻接矩阵是一个n*n的方阵,定义为: 看一个实例,下图左就是一个无向图... 阅读全文
posted @ 2015-07-19 16:29 xxxxxxxx1x2xxxxxxx 阅读(174) 评论(0) 推荐(0)

摘要:源代码(C语言实现) ①.构造链表节点typedef struct Node //一个单独的节点 { int data;//数据域struct Node * pNext;//指针域}NODE,* PNODE; ②.链表的初始化PNODE init_list() {int len ;//链表的长度in... 阅读全文
posted @ 2015-07-19 14:23 xxxxxxxx1x2xxxxxxx 阅读(375) 评论(0) 推荐(0)

摘要:排序算法经过了很长时间的演变,产生了很多种不同的方法。对于初学者来说,对它们进行整理便于理解记忆显得很重要。每种算法都有它特定的使用场合,很难通用。因此,我们很有必要对所有常见的排序算法进行归纳。 我不喜欢死记硬背,我更偏向于弄清来龙去脉,理解性地记忆。比如下面这张图,我们将围绕这张图来思考几个... 阅读全文
posted @ 2015-02-10 22:51 xxxxxxxx1x2xxxxxxx 阅读(172) 评论(0) 推荐(0)

摘要:二维码原理:http://jingyan.baidu.com/article/86f4a73e520e3b37d6526981.html 百科:http://baike.baidu.com/view/132241.htm 阅读全文
posted @ 2015-02-04 02:38 xxxxxxxx1x2xxxxxxx 阅读(170) 评论(0) 推荐(0)

摘要:二分查找算法是在有序数组中用到的较为频繁的一种算法,在未接触二分查找算法时,最通用的一种做法是,对数组进行遍历,跟每个元素进行比较,其时间为O(n).但二分查找算法则更优,因为其查找时间为O(lgn),譬如数组{1, 2, 3, 4, 5, 6, 7, 8, 9},查找元素6,用二分查找的算法执行的... 阅读全文
posted @ 2015-02-02 04:25 xxxxxxxx1x2xxxxxxx 阅读(128) 评论(0) 推荐(0)

摘要:循环(迭代)与递归的区别1. 递归算法与迭代算法的设计思路区别在于:函数或算法是否具备收敛性,当且仅当一个算法存在预期的收敛效果时,采用递归算法才是可行的,否则,就不能使用递归算法。 当然,从理论上说,所有的递归函数都可以转换为迭代函数,反之亦然,然而代价通常都是比较高的。 ... 阅读全文
posted @ 2014-11-18 02:07 xxxxxxxx1x2xxxxxxx 阅读(855) 评论(0) 推荐(0)

摘要:C++常用排序法研究2008-12-25 14:38首先介绍一个计算时间差的函数,它在头文件中定义,于是我们只需这样定义2个变量,再相减就可以计算时间差了。函数开头加上 clock_t start = clock();函数结尾加上 clock_t end = cloc... 阅读全文
posted @ 2014-11-06 10:22 xxxxxxxx1x2xxxxxxx 阅读(619) 评论(0) 推荐(0)

上一页 1 2 3