自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

专注于算法

不是具体的技术和工具,而是算法这些基本的东西成为了技术深入的软肋

  • 博客(18)
  • 资源 (16)
  • 收藏
  • 关注

原创 求两个等长升序序列的中位数

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】1.        算法要求一个长度为L(L≥1)的升序序列S,处在第L / 2(若为小数则去掉小数后加1)个位置的数称为S 的中位数。例如,若序列S1=(11,13,15,17,19),则S1 的中位数是15,两个序列的中位数是含它们所有元素的升序序列的中

2011-12-19 15:47:11 13686 1

原创 循环左移数组

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】1.        算法要求设将n(n>1)个整数存放到一维数组R中,试设计一个在时间和空间两方面尽可能有效的算法,将R中保有的序列循环左移P(0﹤P﹤n)个位置,即将R中的数据由(X0 X1 ……Xn-1)变换为(Xp Xp+1 ……Xn-1  X

2011-12-07 17:09:26 6869 1

原创 取单链表倒数第k个元素

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】1. 算法要求已知一个带有表头结点的单链表,结点结构为typedef struct lnode { elemtype data; struct lnode *next;}lnode, *linklist;假设该链表只给出了头指针l.在不

2011-12-07 11:51:19 11845

原创 排序算法之总结

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】前面几节讲了几种排序算法(包括算法思想、算法实现、算法分析),本节将要对这几种算法进行一个综合比较分析,大致有如下结果:排序算法平均时间最坏情况稳定性辅助存储直接插入排序

2011-12-05 16:05:38 1214

原创 排序算法之选择排序

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】选择排序(Selection Sort)的基本思想是:每一趟从待排序的记录中选出关键字最小的记录,顺序放在已排好序的子文件的最后,直到全部记录排序完毕。常用的选择排序方法有简单选择排序(Simple Selection Sort)和堆排序(Heap So

2011-11-30 13:44:23 2371

原创 排序算法之交换排序

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】交换排序的基本思想是:两两比较待排序记录的关键字,发现两个记录的次序相反时即进行交换,直到没有反序的记录为止。应用交换排序基本思想的主要排序方法有:冒泡排序(Bubble sort)和快速排序(Quick sort)。1.        冒泡排序

2011-11-29 11:34:24 11443 1

原创 排序算法之插入排序

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】本节主要分析插入排序算法的直接插入排序和希尔(shell)排序(又称缩小增量排序)。1.         直接插入排序        该排序是最简单的排序方法,其基本思想是:假设待排序的记录存放在数组R[1..n]中。初始时,R[1]自成1个有序区,无序

2011-11-24 13:26:22 1363

原创 排序算法之概述

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】排序是计算机程序设计中的一种重要操作。所谓排序,就是要整理文件中的记录,使之按关键字递增(或递减)次序排列起来。其确切定义如下:  输入:n个记录R1,R2,…,Rn,其相应的关键字分别为K1,K2,…,Kn。  输出:Ril,Ri2,…,Rin,使得K

2011-11-24 11:48:50 1951

原创 二叉树的线索化

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】前面说到二叉树的二叉链表表示实现,当以二叉树作为存储结构时,只能找到节点的左右孩子信息,不能直接得到结点在任一序列中的前驱和后继信息,只有在遍历过程中才能得到这种信息。我们知道,在n个结点的二叉链表栈必定存在n+1个空链域,因此,可以利用这些空链域来存放这些结点

2011-11-21 14:37:00 34489 5

原创 二叉树遍历非递归实现

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】遍历是二叉树各种操作的基础,上一节给出的遍历算法是递归实现的,本节给出二叉树遍历的非递归实现,非递归实现需要使用前面讲到的数据结构——栈、队列来作为辅助空间。先序遍历int preorder_traverse(bitree bt, int (*v

2011-11-16 11:52:15 6954

原创 二叉树的二叉链表表示与实现

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】 前面几节讲到的结构都是一种线性的数据结构,今天要说到另外一种数据结构——树,其中二叉树最为常用。二叉树的特点是每个结点至多只有两棵子树,且二叉树有左右字子树之分,次序不能任意颠倒。二叉树的存储结构可以用顺序存储和链式存储来存储。二叉树的顺序存储结构由一组连

2011-11-15 17:47:49 29514 1

原创 循环队列的实现

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】在队列中也可以使用连续的内存空间存放队列元素,附设两个指针分别指向对头和队尾,初始化两个指针为0,当有元素进队时对为指针加1,有元素出对时队尾指针加1。但这样的话会有问题,就是出队列留下的地址空间就不会被利用了,且当开始分配的空间使用完时还会不停的申请空间,浪费

2011-11-12 23:20:04 2178

原创 链式队列的实现

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】队列是一种先进先出的线性表,也是一种操作受限的线性表,只允许在表的头部删除元素和尾部添加元素。队列有链式表示和顺序表示。队列的链式表示由于在表头和表尾操作,需要两个指针分别指向对头和队尾。空的链式队列判决条件为对头指针和队尾指针是否指向同一个结点(头节点)。

2011-11-12 22:40:39 1667

原创 链栈的实现

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】链栈的操作就是链式线性表的尾部进行添加元素和删除元素,由于只在尾部进行操作,不需要专门的头节点,栈顶元素即是该链栈的头节点。(注意:栈顶元素对应头插法建表的刚进入链表的元素,栈底元素对应头插法建表最早进入链表的元素)链栈的存储结构#define

2011-11-12 21:44:14 1157 1

原创 顺序栈的实现

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】其实栈也是线性表,只是其为操作有限制的线性表,栈的插入和删除被限制为只能在表尾进行。栈也有两种表示方式:顺序表示和链式表示。栈的基本操作除了在栈顶进行插入、删除之外还有栈的初始化、栈顶元素等操作。顺序栈使用一组连续的内存空间存放数据,附设两个指针分别指向栈顶和栈

2011-11-12 21:03:43 834

原创 线性表链式实现

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】上一节说到线性表的顺序实现,顺序表示是使用一段连续的内存空间存储表元素,这使得存取数据元素相当快,直接使用下标即可存取元素,但这种线性表表示方式的缺点就是在插入和删除元素是要移动数据元素,移动元素多少并且是和线性表的长度相关的,当表很长时插入删除元素要移动相当大

2011-11-12 17:28:30 1878 3

原创 线性表顺序实现

【版权声明:转载请保留出处:blog.csdn.net/algorithm_only。邮箱:[email protected]】线性表的顺序表示是指用一组连续的内存地址单元存储线性表数据。线性表的这种存储结构容易实现随机存取第i个数据元素以及求线性表的长度。顺序存储结构#define LIST_INIT_SIZE 50#define LIS

2011-11-11 23:30:27 706

原创 算法开篇

【声明:版权所有,转载请保留出处。作者邮箱:[email protected]】算法广义上是指“计算机领域的对问题的思考方式以及解决步骤,是一种思路和逻辑性的体现”。还有大家都知道的一句话:算法是程序的灵魂。很多编程人员很注重使用编程语言,都没有学过算法,没有意识到算法的重要,因为一些算法被包装到一些编程序语言之中,这其中的算法往往只适用于本语言或工具而且只能解决某些问题,移植到别的

2011-11-11 22:53:47 657

求两个等长升序序列的中位数算法实现源码

求两个等长升序序列的中位数的实现源码。博客地址:blog.csdn.net/algorithm_only

2011-12-19

循环左移数组元素实现源码

循环左移数组中的数据元素,使用循环队列实现。

2011-12-07

取单链表倒数第k个元素

取单链表倒数第k个元素,包括算法描述、算法思想,算法实现等

2011-12-07

归并算法实现源码

排序算法之瑰宝算法:包括2-路归并算法实现。

2011-12-02

选择排序实现源码

选择排序算法实现源码:包括简单选择排序算法和堆排序算法的实现。

2011-11-30

交换排序实现源码

交换排序实现源码:包括冒泡排序和快速排序的实现。

2011-11-29

插入排序实现源码

插入排序实现源码,包括直接插入排序、shell排序。

2011-11-25

二叉树的线索化实现

二叉树的中序线索化,包括进行线索化和遍历线索二叉树。

2011-11-21

二叉树的二叉链表表示与实现

二叉树的二叉链表表示与实现,包括二叉树的建立、遍历、深度、叶子节点数等

2011-11-16

循环顺序队列的表示和实现

循环顺序队列的表示和实现,包括队列的初始化、添加删除元素等操作。

2011-11-12

链式队列的表示和实现源码

链式队列的表示和实现源码,包括队列初始化,添加元素、删除元素等操作。

2011-11-12

链栈的表示和实现源码

链式存储的栈表示和实现源码,包括链栈的初始化、进栈、出栈、取栈顶元素等操作。

2011-11-12

顺序栈的表示和实现源码

顺序栈的实现源码,包括初始化、去栈顶元素、进栈、弹栈等操作。

2011-11-12

线性表链式表示及实现源码

线性表链式表示及实现源码; 免费下载 http://download.csdn.net/detail/algorithm_only/3787127

2011-11-12

线性表顺序表示及实现源码

线性表的顺序表示和实现源码。 Blog: http://blog.csdn.net/algorithm_only

2011-11-11

linux C编程风格

讲述Linux内核关于变量命名、函数命名、编程缩进等规则.

2011-11-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除