- 博客(29)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 【剑指offer】丑数
题目描述把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。解决方案1.一一遍历:时间复杂度高一次遍历求出第index个丑数,从1开始,如果是丑数则count++,直到count = index为止。判断丑数依据题目意思,丑数只有2,3,5三个因子,因此就用这个...
2019-03-31 21:24:58 144
原创 【剑指offer】变态跳台阶
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。解决方案class Solution {public: int jumpFloorII(int number) { if (number < 1) { return 0; } ...
2019-03-31 20:07:22 118 1
原创 【剑指offer】跳台阶
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。解决方案class Solution {public: int jumpFloor(int number) { if (number == 1) { return 1; } int a = 1; int b = 1; int ...
2019-03-31 20:06:45 97
原创 【剑指offer】第一次出现一次的字符
题目描述在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).解决方案class Solution {public: int FirstNotRepeatingChar(string str) { int hashtable[256] = {0}; ...
2019-03-30 10:33:55 91
原创 【剑指offer】平衡二叉树
题目描述输入一棵二叉树,判断该二叉树是否是平衡二叉树。解决方案class Solution {public: bool IsBalanced_Solution(TreeNode* pRoot) { if(pRoot == NULL) return true; if(abs(getDepth(pRoot->left) - getDepth(pRo...
2019-03-30 00:43:00 93
原创 字符流中第一个不重复的字符
题目描述请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。输出描述:如果当前字符流没有存在出现一次的字符,返回#字符。解决方案class Solution{public: //Insert one char from ...
2019-03-29 23:16:21 113
原创 单例模式
单例模式:一个类只能创建一个对象,该模式可以保证系统中只有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。单例模式的要点有三个:单例类只能有一个实例它必须自行创建这个实例它必须自行向整个系统提供提供这个实例具体实现角度来说,就是以下三点:单例模式的类只提供私有的构造函数类定义中含有一个该类的静态私有对象该类提供了一个静态的公有的函数用于创建或获取它本身的静...
2019-03-27 22:49:32 129
原创 字符串通配符
题目描述问题描述:在计算机中,通配符一种特殊语法,广泛应用于文件搜索、数据库、正则表达式等领域。现要求各位实现字符串通配符的算法。要求:实现如下2个通配符:*:匹配0个或以上的字符(字符由英文字母和数字0-9组成,不区分大小写。下同)?:匹配1个字符输入:通配符表达式;一组字符串。输出:返回匹配的结果,正确输出true,错误输出false**输入描述: **先输入一个带有通...
2019-03-24 22:27:01 2381
原创 超长正整数相加
题目描述请设计一个算法完成两个超长正整数的加法。接口说明 /* 请设计一个算法完成两个超长正整数的加法。 输入参数: String addend:加数 String augend:被加数 返回值:加法结果 */ public String AddLongInteger(String addend, String augend) { /*在这里实现功能*/ ...
2019-03-22 22:43:17 455
原创 完美数计算
题目描述完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。例如:28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。给定函数count(int n),用于计算n以内(含n)完全数的个数。计算范围, 0 < n <= 5000...
2019-03-21 23:07:00 2933
原创 公共字符串计算
题目描述题目标题:计算两个字符串的最大公共字串的长度,字符不区分大小写详细描述:接口说明原型:int getCommonStrLength(char * pFirstStr, char * pSecondStr);输入参数: char * pFirstStr //第一个字符串 char * pSecondStr//第二个字符串输入描述:输入两个字符串输出描述:输出一...
2019-03-20 21:20:25 281
原创 二进制中1的个数
题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。解决方案class Solution {public: int NumberOf1(int n) { int count = 0; while (n) { count++; n = n&(n-1); ...
2019-03-20 20:58:08 93
原创 507.完美数
题目描述对于一个 正整数,如果它和除了它自身以外的所有正因子之和相等,我们称它为“完美数”。给定一个 正整数 n, 如果他是完美数,返回 True,否则返回 False示例:输入: 28输出: True解释: 28 = 1 + 2 + 4 + 7 + 14解决方案class Solution {public: bool checkPerfectNumber(int nu...
2019-03-20 20:28:39 281
原创 C++中指针常量与常量指针的区别
在C++学习过程使用中,每个人都不可避免的会把指针错误理解或在不理解,尤其是对指针常量和常量指针的理解,特别容易把概念搞混淆。本文就针对该问题简单的说说指针常量和常量指针的区别。指针常量本质是一个常量,而用指针修饰它。指针常量的值是指针,这个值因为是常量,所以不能被赋值。特征:是个常量。指针锁保存的地址可以改变,但指针指向的值不能改变。指针本身是常量,指向的地址不可以变,但指向的地址...
2019-03-19 16:25:58 753
原创 统计回文
题目描述“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。花花非常喜欢这种拥有对称美的回文串,生日的时候她得到两个礼物分别是字符串A和字符串B。现在她非常好奇有没有办法将字符串B插入字符串A使产生的字符串是一个回文串。你接受花花的请求,帮助她寻找有多少种插入办法可以使新串是一个回文串。如果字符串B插入的位置不同就考虑为不一样的办法。例如:A = “a...
2019-03-17 21:38:24 107
原创 进制转换
题目描述给定一个十进制数M,以及需要转换的进制数N。将十进制数M转化为N进制数输入描述:输入为一行,M(32位整数)、N(2 ≤ N ≤ 16),以空格隔开。输出描述:为每个测试实例输出转换后的数,每个输出占一行。如果N大于9,则对应的数字规则参考16进制(比如,10用A表示,等等)示例1输入7 2输出111#include&lt;iostream&gt;#includ...
2019-03-17 21:37:43 196
原创 格子走法
题目描述请编写一个函数(允许增加子函数),计算n x m的棋盘格子(n为横向的格子数,m为竖向的格子数)沿着各自边缘线从左上角走到右下角,总共有多少种走法,要求不能走回头路,即:只能往右和往下走,不能往左和往上走。输入描述:输入两个正整数输出描述:返回结果示例1输入22输出6解决方案/*-------------| 1 | 2 | 3 |------------...
2019-03-17 21:35:47 1340
原创 二叉树中和为某一值的路径
题目描述输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前)解决方案/*struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNod...
2019-03-15 16:59:31 107
原创 C++之继承体系
什么是继承继承是面向对象程序设计中的一个重要概念,继承允许我们依据一个类来定义另一个类,这使得创建和维护一个应用程序变得更容易。这样做,也达到了重用代码功能和提高执行时间的效果。当创建一个类时,不需要重新编写新的数据成员和成员函数,只需指定新建的类继承了一个已有的类的成员即可。这个已有的类称为基类,新建的类称为派生类。继承代表了 is a 关系。例如,哺乳动物是动物,狗是哺乳动物,因此,狗是...
2019-03-15 16:16:43 438
原创 数据流中的中位数
题目描述如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。代码实现class Solution {public: priority_queue<i...
2019-03-12 23:17:00 118
原创 连续最大和
题目描述一个数组有 N 个元素,求连续子数组的最大和。 例如:[-1,2,1],和最大的连续子数组为[2,1],其和为 3输入描述:输入为两行。第一行一个整数n(1 <= n <= 100000),表示一共有n个元素第二行为n个数,即每个元素,每个整数都在32位int范围内。以空格分隔。输出描述:所有连续子数组中和最大的值。 示例1输入3 -1 2 1输...
2019-03-11 23:06:27 308
原创 删除公共字符串
题目描述输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入They are students.和aeiou,则删除之后的第一个字符串变成Thy r stdnts.输入描述:每个测试输入包含2个字符串输出描述:输出删除后的字符串示例1输入They are students. aeiou输出Thy r stdnts.代码实现思路:这个思路真的非常不容...
2019-03-11 19:22:38 353
原创 求最小步变成斐波拉契数
题目描述Fibonacci数列是这样定义的:F[0] = 0F[1] = 1for each i ≥ 2: F[i] = F[i-1] + F[i-2] 因此,Fibonacci数列就形如:0, 1, 1, 2, 3, 5, 8, 13, …,在Fibonacci数列中的数我们称为Fibonacci数。给你一个N,你想让其变为一个Fibonacci数,每一步你可以把当前数字X变为X...
2019-03-11 18:19:11 499
原创 组队竞赛
题目描述牛牛举办了一次编程比赛,参加比赛的有3*n个选手,每个选手都有一个水平值a_i.现在要将这些选手进行组队,一共组成n个队伍,即每个队伍3人.牛牛发现队伍的水平值等于该队伍队员中第二高水平值。例如:一个队伍三个队员的水平值分别是3,3,3.那么队伍的水平值是3一个队伍三个队员的水平值分别是3,2,3.那么队伍的水平值是3一个队伍三个队员的水平值分别是1,5,2.那么队伍的水平值是2...
2019-03-10 22:19:17 247
原创 校招全国统一模拟笔试(二月场)
【独立的牛牛】小牛牛为了向他的父母表现他已经长大独立了,他决定搬出去自己居住一段时间。一个人生活增加了许多花费: 牛牛每天必须吃一个水果并且需要每天支付x元的房屋租金。当前牛牛手中已经有f个水果和d元钱,牛牛也能去商店购买一些水果,商店每个水果售卖p元。牛牛为了表现他独立生活的能力,希望能独立生活的时间越长越好,牛牛希望你来帮他计算一下他最多能独立生活多少天。输入描述:输入包括一...
2019-03-03 14:12:45 578
原创 宏替换?内联函数
在上一篇中提到了宏定义常量,说到宏这个概念,我们就来谈谈C++中关于宏的真正概念。用内联函数取代宏在C++ 语言中支持函数内联,目的是为了提高函数的执行效率。在C语言中使用宏代码的方式提高执行效率。宏本身不是函数,但使用起来像是函数。在编译预处理阶段拷贝宏代码的方式取代函数调用,省去了参数压栈,生成汇编语言的CALL调用,返回参数等等。但是使用宏的最大缺点就是容易出错。因此在C++中采用了一...
2019-03-02 15:57:30 296
原创 const与define的比较
const与define在C++中定义一个常量用const修饰,也可以用#define来定义,但是前者比后者更具有优点:const所修饰的常量可以具有类型,而宏常量没有数据类型。编译器可以对前者进行静态类型安全检查;而对后者只进行字符替换,没有类型安全检查,并且在字符替换的时候可能产生意料不到的错误。集成开发环境可以对const常量进行调试,而不能对宏常量进行调试。建议在C++程序中尽...
2019-03-02 15:36:14 321
原创 const在C语言和C++中的区别
const在C语言和C++中的对比一C语言中const是定义了一个const变量,该变量只具备读的功能,不具备写的功能。C++中const是定义了一个常量。const int a = 5;int array[a]; //在C语言中编译错误,因为a是一个变量int array[a];//在C++中正确,因为a是一个常量const在C语言和C++中的对比二C语言中不能定义c...
2019-03-02 15:28:49 1075 4
原创 Centos7 yum 安装Mariadb教程
以下操作都是在root用户权限下进行操作以下操作都是在root用户权限下进行操作以下操作都是在root用户权限下进行操作安装安装mariadb服务# yum install -y mariadb-server安装mariadb命令行客服端# yum install -y mariadb安装mariadb C library# yum install -y mariadb-li...
2019-03-01 23:15:03 1609
Mybatis PageHelper分页查询失效问题,如何解决?
2020-05-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人