自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

哆啦A梦~~

计算机

  • 博客(23)
  • 收藏
  • 关注

转载 顺序检索和随机检索

顺序查找 编辑顺序查找是在一个已知无(或有序)序队列中找出与给定关键字相同的数的具体位置。原理是让关键字与队列中的数从最后一个开始逐个比较,直到找出与给定关键字相同的数为止,它的缺点是效率低下。 随机搜索随机搜索(random search)是利用随机数求极小点而求得函数近似的最优解的方法。变量允许的变化区间,不断随机地而不是有倾向性产生随机点,并计算其约束函数和目标函数的...

2018-04-28 15:46:19 16667 1

转载 在C语言中,double、long、unsigned、int、char类型数据所占字节数

和机器字长及编译器有关系:  所以,int,long int,short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的):   1 sizeof(short int)<=sizeof(int)   2 sizeof(int)<=sizeof(long int)   3 short int至少应为16位(2字节)   4 long int至少应为32位。  ...

2018-04-27 15:16:25 10999

转载 N皇后的两个最高效的解法

1. 问题描述 N皇后问题是一个经典的问题,在一个N*N的棋盘上放置N个皇后,每行一个并使其不能互相攻击(同一行、同一列、同一斜线上的皇后都会自动攻击)我们可以通过下面的图标来展示回溯法的过程 从而更加有助于我们的理解 我们在试探的过程中,皇后的放置需要检查他的位置是否和已经放置好的皇后发生冲突,为此需要以及检查函数来检查当前要放置皇后的位置,是不是和其他已经放置的皇后发生冲突假设有两个皇后被放置...

2018-04-26 16:54:54 1576

原创 数据结构

目录1.逻辑结构2.存储结构(物理结构)3.数据操作

2018-04-25 11:20:27 209

原创 一道关于串的题 模式匹配 KMP

——来自牛客网题目:字符串′ababaabab′的nextval为()正确答案: A   你的答案: 空 (错误)(0,1,0,1,0,4,1,0,1)(0,1,0,1,0,2,1,0,1)(0,1,0,1,0,0,0,1,1)(0,1,0,1,0,1,0,1,1)解答:    i       0    1    2    3    4    5    6    7    8     s     ...

2018-04-24 22:02:38 738

转载 【数据结构】树的定义和树的三种存储结构

一、树的定义1.树的定义树(Tree)是n(n>=0)个结点的有限集。n=0时称为空树。在任意一颗非空树中:有且仅有一个特定的称为根(root)的结点;当n>1时,其余结点可分为m(m>0)个互补交互的有限集T1、T2...Tm,其中每一个集合本身又是一棵树,并称为根的子树(SubTree)。Tree2.树的特点n>0时,根节点是唯一的,不可能存在多个根节点。数据结构中的树...

2018-04-22 09:42:08 753

转载 剑指offer 面试题2 Singleton模式 C++实现

1、题目来源《剑指offer 名企面试官精讲典型编程题 纪念版-何海涛 著》2、C++设计模式——单例模式: http://www.jellythink.com/archives/823、C++11多线程教程:http://billhoo.blog.51cto.com/2337751/1294190题目:实现Singleton模式​ 以下内容是我在看《剑指offer》的面试题2时,遇到的问题,因为...

2018-04-20 19:08:30 390

原创 1_赋值运算符函数

面试题1:如下为类型CMyString的声明,请为该类型添加赋值运算符函数。class CMyString{public:CMyString(char *pData=NULL);//构造函数CMyString(const CMyString& str);//拷贝构造函数~CMyString();//析构函数private:char* m_pData;//数据域,字符指针};介绍重载赋值  ...

2018-04-20 16:30:00 191

转载 C++中构造函数,拷贝构造函数和赋值函数的区别和实现

目录构造函数拷贝构造函数赋值函数C++中一般创建对象,拷贝或赋值的方式有构造函数,拷贝构造函数,赋值函数这三种方法。下面就详细比较下三者之间的区别以及它们的具体实现1.构造函数构造函数是一种特殊的类成员函数,是当创建一个类的对象时,它被调用来对类的数据成员进行初始化和分配内存。(构造函数的命名必须和类名完全相同)首先说一下一个C++的空类,编译器会加入哪些默认的成员函数·默认构造函数和拷贝构造函数...

2018-04-20 15:55:07 201

转载 【查找结构5】多路查找树/B~树/B+树

http://www.iteye.com/topic/614070此少侠总结的特棒,直接收藏了。我们这个专题介绍的动态查找树主要有: 二叉查找树(BST),平衡二叉查找树(AVL),红黑树(RBT),B~/B+树(B-tree)。这四种树都具备下面几个优势:(1) 都是动态结构。在删除,插入操作的时候,都不需要彻底重建原始的索引树。最多就是执行一定量的旋转,变色操作来有限的改变树的形态。而这些操作...

2018-04-17 15:05:34 303

转载 C++ 按位与、或、异或等运算方法

按位与运算符(&)参加运算的两个数据,按二进制位进行“与”运算。运算规则:0&0=0;   0&1=0;    1&0=0;     1&1=1;       即:两位同时为“1”,结果才为“1”,否则为0例如:3&5  即 0000 0011 & 0000 0101 = 0000 0001   因此,3&5的值得1。 另,负数按补码...

2018-04-15 21:18:50 481 1

转载 typedef int (*funp_t)(int) 和typedef int fun_t(int)的比较

相似点都使用typedef将由基础数据类型构成的复杂组合类型赋给一个简单的名字;都遵循C的传统——由typedef定义的类型以“_t“结尾;二者都能起到减少代码字符输入量的作用;“一定程度上”增加代码的可读性(此观点不具有绝对正确性,仁者见仁)在以下情况调用函数使用方式相同:void second(fun_t first);void second(fun_t *first);void seco...

2018-04-15 20:19:16 772 1

转载 深入C++的new

8“new”是C++的一个关键字,同时也是操作符。关于new的话题非常多,因为它确实比较复杂,也非常神秘,下面我将把我了解到的与new有关的内容做一个总结。new的过程当我们使用关键字new在堆上动态创建一个对象时,它实际上做了三件事:获得一块内存空间、调用构造函数、返回正确的指针。当然,如果我们创建的是简单类型的变量,那么第二步会被省略。假如我们定义了如下一个类A:class A{   int ...

2018-04-15 18:00:27 129

转载 剑指offer代码 vs2013执行

方法:代码文件夹名称为:CodingInterviewChinese2-master1. 用vs2013加载解决方案 .sln文件2. 一个解决方案下面有多个项目,通过右键解决方案->属性->通用属性->启动项目... 可以设置单项启动项目    选择单项启动,选中一个项目然后确定。发现解决方案下面对应的项目名称字体加粗了。   或者,直接右键想要启动的项目点击 “设置为启动项”...

2018-04-14 15:20:58 247

转载 标准异常

       C++标准库定义了一组类,用于报告在标准库中的函数遇到的问题。程序员可在自己编写的程序中使用这些标准异常类。标准库异常类定义在四个头文件中:(1)<exception>头文件定义了最常见的异常类,它的类名是exception。这个类只通知异常的产生,但不会提供更多的信息。(2)<stdexcept>头文件定义了几种常见的异常类。这些类型在表1中列出。(3)&l...

2018-04-14 11:14:41 204

转载 C++自己编写吐出异常时,throw与throw new的区别

       一直都是照着别人的指示在代码中加入异常的检查,但是从来没有在代码中处理过异常。今天下午把一段代码写到VS里,代码会对非法输入吐出异常,然后main函数里会捕捉到这些异常。吐出异常的代码:[cpp] view plain copyif (numbers == NULL || length <= 0)      throw new std::exception("Invalid P...

2018-04-14 11:12:39 4823

转载 剑指offer第二版-56.数组中只出现一次的两个数字

面试题56:数组中只出现一次的两个数字题目要求:一个整数数组里除了两个数字出现一次,其他数字都出现两次。请找出这两个数字。要求时间复杂度为o(n),空间复杂度为o(1)。解题思路:这道题可以看成“数组中只出现一次的一个数字”的延伸。如果所有数字都出现两次,只有一个数字是出现1次,那么可以通过把所有所有进行异或运算解决。因为x^x = 0。但如果有两个数字出现一次,能否转化成上述问题?依旧把所有数字...

2018-04-14 11:02:36 101

转载 C++序列容器之 vector常见用法总结

一、关于vector    本文默认读者具有一定的c++基础,故大致叙述,但保证代码正确。    vector是一个动态的序列容器,相当于一个size可变的数组。    相比于数组,vector会消耗更多的内存以有效的动态增长。而相比于其他动态序列容器(deques, lists and forward_lists),vector能更快的索引元素(就像数组一样),而且能相对高效的在尾部插入和删除元...

2018-04-13 21:37:49 136

转载 C++ STL学习——vector

       学过C++的人肯定会很熟悉STL标准模板库,STL其实就是封装了一系列的接口,供我们调用。很多函数或者算法的实现不需要我们从头开始写,大大提高我们的编程效率。这篇博客在简单介绍STL的情况下,会详细的来介绍vector的使用。STL共有六大组件:一。容器(Container):是一种数据结构,如list,vector,deque,queue等,以模板类的方法提供,为了访问容器中的数据...

2018-04-13 21:36:34 138

转载 STL简介

STL的原名是“Standard Template Library”,翻译过来就是标准模板库。STL是C++标准库的一个重要组成部分,主要由六大组件构成。这六大组件是:容器(Container)、算法(algorithm)、迭代器(iterator)、仿函数(functor)、适配器(adapter)、配置器(allocator)。1、容器(container)容器可以分为三类即序列容器、关联容器...

2018-04-13 21:29:54 169

转载 C结构体之位域(位段)

有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进位划分为几个不同的区域, 并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。 这样就可以把几个不同的对象用一个字节的二进制位...

2018-04-12 22:04:50 121

转载 PYTHON基础

2. 基本语法2.1. if / elif / elsex=int(raw_input("Please enter an integer:"))#获取行输入 if x>0:    print '正数'elif x==0:    print '零'else:    print '负数' 此外C语言中类似"xxx?xxx:xxx"在Python中可以这样写 >>>number=...

2018-04-12 21:29:14 1652

翻译 #1000 : A + B

A+B Problem描述求两个整数A+B的和。输入输入包含多组数据。每组数据包含两个整数A(1 ≤ A ≤ 100)和B(1 ≤ B ≤ 100)。输出对于每组数据输出A+B的和。样例输入1 23 45 6样例输出3711语言程序C#include <stdio.h> int main(void) { int a, b; while(scanf("%d%d...

2018-04-12 20:51:05 325

空空如也

空空如也

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

TA关注的人

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