志存高远

专注于C/C++

排序:
默认
按更新时间
按访问量

数据结构与算法-----总结篇

一、数据结构 程序设计=数据结构+算法 1.逻辑结构 1)集合:元素之间没有联系。 2)线性结构:元素之间存在前后顺序。 3)树形结构:元素之间存在一对多的父子关系。 4)图状结构:元素之间存在多对多的映射关系。 2.物理结构 1)顺序结构:用连续的空间存放数据元素。 优点:便于随机访问。 缺点...

2015-06-17 17:09:30

阅读数:2620

评论数:1

des,d2des,d3des的区别

三重DES    因为确定一种新的加密法是否真的安全是极为困难的,而且DES的唯一密码学缺点,就是密钥长度相对比较短,所以人们并没有放弃使用DES,而是想出了一个解决其长度问题的方法,即采用三重DES。这种方法用两个密钥对明文进行三次加密,假设两个密钥是K1和K2,其算法的步骤如图5.9所示:  ...

2016-02-17 17:27:45

阅读数:1360

评论数:0

数据结构与算法------二分查找

二分查找 1.算法:假设数据按升序排列,取中间位置值,如果目标等于中值,则查找成功;如果目标小于中值,则在中值左侧继续查找;如果目标大于中值,则在中值右侧继续查找;直到找到或者找不到为止。 2.评价:O(logN),数据必须有序。#include<iostream> #includ...

2015-12-08 16:02:13

阅读数:475

评论数:0

数据结构与算法------线性查找

线性查找 1.算法:逐个比较,找到为止。 2.评价:O(N),对数据的有序性没有要求。#include<iostream> #include<cstdlib> using namespace std; int lfind(int *data,int size,int v...

2015-12-08 14:47:54

阅读数:518

评论数:0

数据结构与算法-----归并排序

归并排序(递归合并) 平均时间复杂度O(2NlogN),稳定,对数据有序性不敏感,非就地排序,不适用于对海量数据进行排序。void remoteMerge(int *arr1,int size1,int *arr2,int size2,int *arr3) 此函数属于异地合并,arr1和arr...

2015-12-08 13:05:30

阅读数:483

评论数:0

数据结构与算法-----搜索和排序(C语言库函数的使用)

qsort(利用快速排序法排列数组) 表头文件 #include#include<stdio.h> #include<stdlib.h> #include<string.h> int cmpInt(const void *a,const void *b){ ...

2015-12-04 16:44:32

阅读数:802

评论数:0

数据结构与算法-----快速排序

快速排序 1)算法 A.从序列中找出一个元素作为基准; B.从新组织序列,所有小于基准的元素都位于基准的左侧,所有大于基准的元素都位于基准的右侧,与基准相等的元素可位于基准的任一侧; C.以递归的方式分别对左右两个分组进行排序。 2)评价 平均时间复杂度O(NlogN),不稳定。理论上...

2015-12-04 13:20:27

阅读数:396

评论数:0

数据结构与算法-----选择排序

选择排序 12 13 15 23 20 31 19 26 24 1)算法 首先在未排序序列中找到最小元素,并于该序列的首元素做交换,再从剩余的未排序序列中继续寻找最小元素重复以上过程,直到未排序序列中仅剩一个元素为止。 2)评价 平均时间复杂度O(N^2),稳定,对数据的有序性不敏感。相...

2015-12-03 10:04:20

阅读数:341

评论数:0

数据结构与算法-----冒泡排序

冒泡排序 1)算法 A.比较相邻的元素,如果第一个比第二个大就交换它们; B.对每一对相邻的元素都做同样的工作,从开始的第一对到结尾的最后一对。经过这一步,最后的元素是最大值; C.针对所有的元素重复以上步骤,除了最后一个; D.持续每次对越来越少的元素重复以上步骤,直到没有元素需要交换...

2015-12-02 16:10:21

阅读数:2459

评论数:0

数据结构与算法-----单向线性链表(逆转和反向打印)

单向链表没有前指针,所以实现反向打印还是比较麻烦,我们这里使用递归原理解决此问题。 这里提到逆转,也就是将单链表的next指针指向前一个节点,我们也使用递归实现。// 练习:实现单向线性链表的建立、测长、正向打印和 // 反向打印 // 逆转 #include <iostream> ...

2015-12-01 17:05:43

阅读数:1887

评论数:0

数据结构与算法-----堆栈-使用链表(链式结构)实现

使用链表实现堆栈,不需要考虑容量问题,所以只需要注意链表是否为空#include<iostream> #include<fstream> using namespace std; class Stack{ public: Stack(void):top(NULL){...

2015-12-01 16:58:16

阅读数:428

评论数:0

数据结构与算法-----队列-使用链表(链式结构)实现

数据结构:队列结构特点 1.基本特征:先进先出 2.基本操作:从后端(rear)压入(push),从前端(front)弹出(pop) 3.实现要点:初始化空间、从后端指针压入,从前端指针弹出,判空(链表结构只需要判空,不考虑容量不足情况) 下面使用链表实现队列结构,那么成员变量就是front和r...

2015-11-30 17:51:56

阅读数:1060

评论数:0

C语言-----循环双向链表(增加文件读写链表功能)

双向链表其实是单链表的改进。 当我们对单链表进行操作时,有时你要对某个结点的直接前驱进行操作时,又必须从表头开始查找。这是由单链表结点的结构所限制的。因为单链表每个结点只有一个存储直接后继结点地址的链域,那么能不能定义一个既有存储直接后继结点地址的链域,又有存储直接前驱结点地址的链域的这样一个双链...

2015-11-25 17:39:13

阅读数:2133

评论数:1

C语言-----循环单链表

#include<stdio.h> #include<stdlib.h> #include<string.h> typedef struct node{ char name[32]; struct node *next; }no; unsig...

2015-11-24 13:22:20

阅读数:501

评论数:0

C语言-----线性单链表

所谓链表,就是用一组任意的存储单元存储线性表元素的一种数据结构。 链表又分为单链表、双向链表和循环链表等。我们先讲讲单链表。 所谓单链表,是指数据接点是单向排列的。一个单链表结点,其结构类型分为两部分: 1、数据域:用来存储本身数据 2、链域或称为指针域:用来存储下一个结点地址或者说指向其...

2015-11-21 22:48:40

阅读数:1208

评论数:0

原码, 反码, 补码 详解以及负数的按位与运算

本篇文章讲解了计算机的原码, 反码和补码. 并且进行了深入探求了为何要使用反码和补码, 以及更进一步的论证了为何可以用反码, 补码的加法计算原码的减法. 论证部分如有不对的地方请各位牛人帮忙指正! 希望本文对大家学习计算机基础有所帮助! 一. 机器数和真值 在学习原码, 反码和补码之前, 需要先...

2015-08-20 11:06:09

阅读数:5014

评论数:0

数据结构与算法-----双向线性链表

链表 1.基本特征:由一系列内存中不连续的节点组成,每个节点除了保存数据以外,还需要保存其前后节点的地址——双向链表。 2.基本操作 1)追加 2)插入 3)删除 4)遍历 5)伪随机访问 示例:使用C++实现双向链表类,并演示结果;#include <iostream>...

2015-06-18 17:35:42

阅读数:950

评论数:0

数据结构与算法-----队列-使用数组(顺序结构)实现

队列1.基本特征:先进先出 2.基本操作:从后端(rear)压入(push),从前端(front)弹出(pop) 3.实现要点:初始化空间、从后端指针压入,从前端指针弹出, 循环使用,判空判满实践1:使用C++语言实现...

2015-06-18 14:40:37

阅读数:682

评论数:0

数据结构与算法-----堆栈-使用数组(顺序结构)实现

堆栈1.基本特征:后进先出 2.基本操作:压入(push),弹出(pop) 3.实现要点:初始化空间、栈顶指针、判空判满 实践:使用C++语言实现堆栈类,进行示例演示并且根据此堆栈类实现进制的转换。“`include using namespace std; class Stack { ...

2015-06-17 17:40:27

阅读数:1222

评论数:0

C语言位运算符:与、或、异或、取反、左移和右移

C语言位运算符:与、或、异或、取反、左移和右移 语言位运算符:与、或、异或、取反、左移和右移 位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型...

2015-06-04 10:57:07

阅读数:427

评论数:0

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