自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Shorey的专栏

慢慢来

  • 博客(39)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

转载 SCP使用

先说下常用的情况:两台机器IP分别为:A.104.238.161.75,B.43.224.34.73。在A服务器上操作,将B服务器上/home/lk/目录下所有的文件全部复制到本地的/root目录下,命令为:scp -r [email protected]:/home/lk /root。具体过程为:[root@XX ~]# scp -r [email protected]:/home/lk /ro...

2018-03-08 13:40:46 227

转载 归并排序的实现

转自:http://blog.csdn.net/morewindows/article/details/6678165/归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。首先考虑下如何将将二个有序数列合并。这个非常简单,只要从比较二个数列的第一个数,谁小就先取谁,取了后就在对应数列中删除这个数。然后再进行

2015-06-14 15:30:15 394

转载 数组名和数组名取地址&

转载自:http://blog.163.com/njut_wangjian/blog/static/16579642520139289599840/在C中, 在几乎所有使用数组的表达式中,数组名的值是个指针常量,也就是数组第一个元素的地址。 它的类型取决于数组元素的类型: 如果它们是int类型,那么数组名的类型就是“指向int的常量指针“。       在以下两种场合下,数

2015-05-05 15:12:24 397

原创 Prim算法

Prim算法用于生成最小生成树,根据的性质为最小生成树的MST性质MST性质:假设G=(V,E)是一个无向联通网络,U是顶点集合V的一个非空子集,若(u,v)是一条有最小权值的边,其中u∈U,v∈V-U,则必存在一棵包含边(u,v)的最小生成树。Prim算法思想:设G=(V,E)是一个无向连通图,令T=(U,TE)(U代表顶点,TE代表边)是G的最小生成树。T的初始状态为U={

2015-04-27 11:22:43 432

原创 Dijkstra算法(单元点最短路径)

Dijkstra算法解决图中某特定点到其他点的最短路径。迪杰斯塔拉(Dijkstra)算法思想:按路径长度递增的次序产生最短路径的算法。设集合S存放已经找到最短路径的顶点,V为所有节点的集合,S的初始状态只包含源点V0,对Vi∈V-S。假设从源点V0到Vi的有向边为最短路径,以后每求得一条最短路V0……Vk,就把Vk加入集合S里,并将路径V0……Vk,Vi与原来的假设比较,取路径较短者

2015-04-27 10:42:25 2448

转载 Floyd算法

参考:http://www.cnblogs.com/twjcnblog/archive/2011/09/07/2170306.html参考:http://www.cnblogs.com/dolphin0520/archive/2011/08/27/2155542.htmlFloyd算法用于求有向图中任意两点间的最短路径问题。主要需要的参数为图的邻接矩阵。基本思想:任意一点i到j的最

2015-04-27 10:04:38 357

转载 Dijkstra算法(单源最短路径)

转自:http://www.cnblogs.com/dolphin0520/archive/2011/08/26/2155202.htmlDijkstra算法(单源最短路径)      单源最短路径问题,即在图中求出给定顶点到其它任一顶点的最短路径。在弄清楚如何求算单源最短路径问题之前,必须弄清楚最短路径的最优子结构性质。一.最短路径的最优子结构性质   该性质

2015-04-25 16:03:18 284

转载 malloc free和new delete的使用

1、malloc c和c++,都有,申请空间后必须手动释放,但是在申请类的空间的时候,不会自动调用构造函数。2、new c++专有,申请空间后可以自动进行空间回收,而且申请类的空间的时候,可以自动调用构造函数。3、free(与malloc对应)和delete(与new对应)通过free释放空间的时候不会自动调用类的析构函数,但是delete会自动调用类的析构

2015-04-22 09:35:03 313

转载 堆和栈的区别

一、预备知识—程序的内存分配    一个由C/C++编译的程序占用的内存分为以下几个部分    1、栈区(stack)—   由编译器自动分配释放   ,存放函数的参数值,局部变量的值等。其    操作方式类似于数据结构中的栈。    2、堆区(heap)   —   一般由程序员分配释放,   若程序员不释放,程序结束时可能由OS回    收   。注意它与数据结构中的堆是两

2015-04-22 09:32:25 240

转载 C++用位运算实现循环移位

转自:http://www.cnblogs.com/alex4814/archive/2011/09/08/2171862.html循环移位区别于一般移位的是移位时没有数位的丢失。循环左移时,用从左边移出的位填充字的右端。循环右移时,用从右边移出的位填充字的左侧。这种情况在系统程序中时有使用,在一些控制程序中用得也不少。例如:a = 0111

2015-04-19 17:10:01 9484 2

转载 C/C++中有关const的用法

整理自网络1、const修饰普通变量和指针①const修饰普通变量有两种写法:    const TYPE value;TYPE const value;两种写法效果一致,含义为:const修饰的类型为TYPE的变量value是不可变的②const修饰指针变量分四种写法如下:A: const char *p;B: char * const p;C: char

2015-04-19 07:21:50 285

原创 堆排序的C++实现

/************************************************************************* > File Name: HeapSort.cpp > Author: Shorey > Mail: [email protected] > Created Time: 2015年04月09日 星期四 10时25

2015-04-09 12:57:01 278

原创 选择排序的C++实现

简单选择排序为最简单的选择排序法,基本思想为:将待排序列分为有序区和无序区,每次排序都在无序区中寻找出最小的关键值放在无序区的最前面和已有的有序区构成新的有序区,然后继续对无序区的元素进行选择直到排序完毕。C++实现如下:/************************************************************************* > File

2015-04-09 09:14:08 10271 1

原创 快速排序的C++实现

快速排序是对冒泡排序的改进,改进的重点是:在冒泡排序中记录的比较和移动是在相邻位置进行的,记录每次交换只能前移或者后移一个位置,所以总的比较次数和移动次数比较多。快速排序中,记录的比较和移动是从两端向中间进行的,关键码较大的记录一次就能从前面移动到后面,关键码较小的记录一次就能从后面移动到前面,记录移动的距离较远,从而减小了总的比较次数和移动次数。基本思想:首先选取一个轴值,将待排序的记录分割

2015-04-08 21:25:10 316

原创 希尔排序的C++实现

概念转自:http://blog.csdn.net/morewindows/article/details/6668714该方法的基本思想是:先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。因为直接插入排序在元素基本有序的情况下(接近最好情况)

2015-04-08 21:02:11 396

原创 关于直接插入排序的C++实现

直接插入排序原理可以在网上搜到,这里给出C++实现。分为带“哨兵”和不带“哨兵”两种/************************************************************************* > File Name: InsertSort.cpp > Author: Shorey > Mail: shoreybupt@gmail

2015-04-08 11:15:02 328

转载 继承与组合的优缺点

转自:http://www.xuebuyuan.com/365430.html类继承和对象组合是复用的两种最常用的技术。一:继承  继承是Is a 的关系,比如说Student继承Person,则说明Student is a Person。继承的优点是子类可以重写父类的方法来方便地实现对父类的扩展。  继承的缺点有以下几点:  ①:父类的内部细节对子类是可见

2015-04-07 15:21:55 590

原创 C语言实现只用加法和减法实现两个正整数的乘除运算

1、乘法a*b如下#include#includeint main(){ int a,b; int i,result=0; scanf("%d%d",a,b); for(i=0; i<b; i++) { result = result+a; } printf("%d\n",result); return

2015-04-07 11:01:25 4653

原创 关于C++中移位操作

C++移位操作对int型和unsigned int型数据的影响不同,具体测试如下Linux环境,GCC编译/************************************************************************* > File Name: test.cpp > Author: Shorey > Mail: shoreybup

2015-04-07 10:12:33 716

转载 浅谈C++中指针和引用的区别

出处:http://www.cnblogs.com/dolphin0520/ 指针和引用在C++中很常用,但是对于它们之间的区别很多初学者都不是太熟悉,下面来谈谈他们2者之间的区别和用法。1.指针和引用的定义和性质区别:(1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。如:int a=1;int

2015-04-05 22:21:49 309

转载 将表达式转换成逆波兰式

转载:http://www.cnblogs.com/stay-foolish/archive/2012/04/25/2470590.html一、题目◆3.21③  假设表达式由单字母变量和双目四则运算算符构成。试写一个算法,将一个通常书写形式且书写正确的表达式转换为逆波兰式。实现下列函数:char *RPExpression(char *e);/* 返回表达

2015-04-05 15:15:29 7854 1

转载 struct和typedef struct

转自:http://www.cnblogs.com/qyaizs/articles/2039101.html分三块来讲述:  1 首先://注意在C和C++里不同    在C中定义一个结构体类型要用typedef:    typedef struct Student    {    int a;    }Stu;    于是在声明变量的时候就可:Stu stu1

2015-04-05 10:34:09 221

转载 原码, 反码, 补码 详解

转自:http://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html本篇文章讲解了计算机的原码, 反码和补码. 并且进行了深入探求了为何要使用反码和补码, 以及更进一步的论证了为何可以用反码, 补码的加法计算原码的减法. 论证部分如有不对的地方请各位牛人帮忙指正! 希望本文对大家学习计算机基础有所帮助! 

2015-04-04 20:11:21 340

转载 判断单链表里面有没有环

转自:http://www.cnblogs.com/zhyg6516/archive/2011/03/29/1998831.html题目:0.如何判断单链表里面是否有环?算法的思想是设定两个指针p, q,其中p每次向前移动一步,q每次向前移动两步。那么如果单链表存在环,则p和q相遇;否则q将首先遇到null。这里主要理解一个问题,就是为什么当单链表存在环时,p和q一定会相遇呢?

2015-04-04 17:24:19 201

原创 二叉树的C++实现

这个实现的时候由于采用了递归,思路比较清晰。出错的地方是在建立树的时候关于指针的指针容易出错,我比较菜,求助了网上的热心人才搞明白。附上网址供大家参考http://bbs.csdn.net/topics/391008633http://www.cnblogs.com/greatIDeas/archive/2010/11/24/1886915.htmlhttp://blog.csdn

2015-04-02 10:40:50 2867

原创 队列的链式存储结构C++实现

采用单链表实现队列,实质上为单链表的一种简化。只需要在链表的头部删除和尾部加入元素即可/************************************************************************* > File Name: LinkQueue.cpp > Author: Shorey > Mail: shoreybupt@gmail

2015-03-24 15:59:31 401

转载 C/C++中不同数据类型所占用的内存大小

32位                 64位 char               1                       1 int                   4             大多数4,少数8 short              2                       2long               4      

2015-03-24 09:40:13 664

原创 循环队列的C++实现

队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。允许插入的一端为队尾(入队),允许删除(出队)的一端为队头。    顺序存储的队列是采用数组来实现的,但由于数组是静态的,在队列的出队和入队的操作下会出现整个队列后移逐渐占用下标加大位置而下标较小位置为空的“假溢出”现象,所以采用了将存储队列的数组看成是头尾相接的循环结构,即允许队列直接从数组的下标最大的位置延续到下

2015-03-23 16:07:54 6934

原创 栈的链式存储结构C++实现

栈的链式存储结构被称为链栈(linked stack)链栈在本质上是简化后的单链表,所有操作只集中在链表的一端,模拟栈的出栈和压栈等操作。一般选择单链表的头部来作为栈顶比较方便。/*************************************************************************    > File Name: LinkStack.cp

2015-03-23 10:37:39 3092

原创 两栈共享空间的顺序栈C++实现

程序中如果需要同时使用具有相同数据类型的两个栈的时候,可以采用一个数组,让一个栈的栈底在该数组的起始端,另一个栈的栈底在数组的结尾,有利于节省空间。/************************************************************************* > File Name: BothStack.cpp > Author: Shor

2015-03-22 14:54:31 2277

原创 顺序栈的C++的实现

顺序栈本质上是顺序表的简化,唯一需要确定的是用数组的哪一端来表示栈底。通常用下标为0的一端作为栈底。/************************************************************************* > File Name: SeqStack.cpp > Author: Shorey > Mail: shoreybupt

2015-03-22 09:09:09 491

原创 线性表的链接存储结构-双向链表

双向链表是在单项链表的基础上每个结点增加了一个前驱指针prior,使得每个结点既能指向其后一个结点的位置也能指向前一个结点的位置。C++实现如下:/************************************************************************* > File Name: DoubLinklist.cpp > Author:

2015-03-16 22:35:09 295

原创 线性表的链接存储结构-单向链表

一、单链表单链表的数据元素称为结点(node),每个结点分为数据域和指针域。下面为单链表的C++实现:#include using namespace std;struct Node //定义结点{ int data; Node *next;};class Linklist //定义链表类{public: Link

2015-03-12 11:18:01 367

原创 UVA 10815安迪的第一个字典

10815 - Andy's First DictionaryTime limit: 3.000 secondsProblem B: Andy's First DictionaryTime limit: 3 secondsAndy, 8, has a dream - he wants to produce his very own dictionary.

2014-11-27 17:20:20 1144

转载 c语言fgets函数

从流中读一行或指定个字符, 原型是char *fgets(char *s, int n, FILE *stream); 从流中读取n-1个字符,除非读完一行,参数s是来接收字符串,如果成功则返回s的指针,否则返回NULL。 形参注释:*string结果数据的首地址;n-1:一次读入数据块的长度,其默认值为1k,即1024;stream文件指针fgets的返回值是个指针,*fgets

2014-11-27 15:00:48 535

转载 关于sprintf

printf 可能是许多程序员在开始学习C 语言时接触到的第二个函数(我猜第一个是main),说起来,自然是老朋友了,可是,你对这个老朋友了解多吗?你对它的那个孪生兄弟sprintf 了解多吗?在将各种类型的数据构造成字符串时,sprintf 的强大功能很少会让你失望。由于sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命

2014-11-27 14:52:11 253

原创 UVA 10878磁带解码

Decode the tapeTime Limit: 1 second "Machines take me by surprise with great frequency."Alan TuringYour boss has just unearthed a roll of old computer tapes. The tapes ha

2014-11-27 10:53:40 297

原创 uva 409借口 借口

Judge Ito is having a problem with people subpoenaed for jury duty giving rather lame excuses in order to avoid serving. In order to reduce the amount of time required listening to goofy excuses, Judg

2014-11-25 16:48:49 347

原创 uva 537 人工智能

uva 537Physics teachers in high school often think that problems given as text are more demanding than pure computations. After all, the pupils have to read and understand the problem first!

2014-11-20 15:37:49 396

信用评分卡开发流程

信用评分卡原理以及开发流程,关键点的阐述。大学课件

2018-04-08

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

TA关注的人

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