3 lizhentao0707

尚未进行身份认证

暂无相关简介

等级
TA的排名 8w+

C++ getline(cin,str), getchar(), cin ,cin.ignore() 字符串和字符读入方式的区别

1 cin读入数字、字符、字符串等,读到空格符、制表符、换行符停止读入。2getline(istream &is , string &str , char delim)读入带空格、制表符等字符的字符串用getline,其原型为如下:istream& getline ( istream &is , string &str , char de...

2019-11-21 19:45:45

2019汇顶科技校招笔试——池塘个数/岛屿个数

池塘个数/岛屿个数#include<iostream>#include<vector>#include<queue>#include<algorithm>using namespace std;bool isCheck(int i, int j, int M, int N){ if (i >= 0 &&amp...

2018-09-25 09:12:22

2019深信服校招——木板接水

2019深信服校招——木板接水题目描述       空地上竖立着n个从左到右排列的木板,它们可以把水挡住,但溢出最边上木板的水将会流到空地上。已知木板间距都是单位1,现给定每个木板的高度,请求出总共能接住的水量?说明一点,这里只考虑间距(宽度)和高度,不考虑第三个维度,因此水量是平方单位。         示例1,木板高度分别是2,1,3,那么我们可以接住2*2=4平方单位的水,如下图...

2018-09-24 12:08:14

strcpy函数实现(考虑内存折叠)

char *my_strcpy(char *dst, const char *src, size_t cnt){ if (nullptr == dst || nullptr == src || cnt == 0) return nullptr; char *temp1 = dst; const char *temp2 = src; if (dst <= src || src ...

2018-09-23 23:10:51

LeetCode——区间合并

区间合并给出一个区间的集合,请合并所有重叠的区间。示例 1:输入: [[1,3],[2,6],[8,10],[15,18]]输出: [[1,6],[8,10],[15,18]]解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].示例 2:输入: [[1,4],[4,5]]输出: [[1,5]]解释: 区间 [1,4] 和 [4,5] 可被视...

2018-09-23 22:25:15

马走日——最小步数

马走日——最小步数题目描述       一匹马在一个8*8的棋盘上走着,它的每一步恰好走成一个日字,也就是在x、y两个方向上,如果在一个方向走一步,另一个方向就走两步。假设棋盘的下标左下角是(1,1),右上角是(8,8)。给你马的最初位置p1(a1,b1),最终位置p2(a2,b2),请你编程求出马从最初位置到最终位置所走的最少步数。#include<iostream&g...

2018-09-23 22:03:35

拼凑钱币-动态规划

拼凑钱币       给你六种面额 1、5、10、20、50、100 元的纸币,假设每种币值的数量都足够多,编写程序求组成N元(N为0~10000的非负整数)的不同组合的个数。       coins = {1, 5, 10, 20, 50, 100};       假设dp[i][j]表示前i种纸币构成值为j的所有组合总数,则对于第i种纸币来说,有三种种情况:(1) 当 coin...

2018-09-05 10:39:22

动态规划-01背包

动态规划01背包题目描述       现有编号分别为1 2 3 4 5的五件物品,它们的重量分别是2 2 6 5 4,价值分别是6 3 5 6 4,现在给你个承重为10的背包,如何让背包里装入的物品具有最大的价值总和?物品重量w[] = {2, 2, 6, 5, 4}; 物品价值v[] = {6, 3, 5, 6, 4}; 背包容量为c;假设opt[i][j]表示前i件物品放入...

2018-09-04 18:26:16

C++ 向vector中读入不定长度的一组数据

向vector中读入不定长度的一组数据(1) 使用getchar()函数#include<iostream>#include<vector>using namespace std;int main(){ vector<int> ivec; int num; do { cin >> num; ivec.push_b...

2018-08-30 17:21:14

单链表的冒泡排序

单链表的冒泡排序1 交换数据域        (1) 带头结点的单链表的冒泡排序(交换数据域)void ListBubbleSort(Node *headNode, int size)// headNode:头节点;size:链表长度{ if (nullptr == headNode || size <= 0) return; for (int i = 0; i &...

2018-07-30 20:07:56

单链表的创建、添加、删除+判断是否有环、环的长度、环入口

单链表       单链表是数据节点是单向排列。包括两个域:数据域和指针域。单链表的节点数据结构如下:// 单链表节点数据结构class listNode{public: int value; // 数据域 listNode *next; // 指针域};        通常用“头指针”来标识一个单链表,头指针是指向单链表第一个节点的指针,如图1所示表...

2018-07-28 23:10:01

2019拼多多提前批笔试 —— 票选球王

2019拼多多提前批笔试 —— 票选球王题目描述:       M 个投票者给 N 个球星评等级,等级由英文字母表示,'a'级最高,'z'级最低,共26个级别。当 [球星X的评级比Y高] 的票数高于 [球星Y的评级比X高] 的票数时,称候选球星X强于候选球星Y。若有一个候选球星强于其他所有球星,则称为球王。根据这个规则至多有一个球王,否则没有球王。请你判断哪位换选球星是球王。输入描述:...

2018-07-22 22:54:59

智能指针的原理及实现

智能指针1 智能指针的作用      智能指针是一个类,用来存储指向动态分配对象的指针,负责自动释放动态分配的对象,防止堆内存泄漏。动态分配的资源,交给一个类对象去管理,当类对象声明周期结束时,自动调用析构函数释放资源2 智能指针的种类        shared_ptr、unique_ptr、weak_ptr、auto_ptr (1) shared_ptr        ...

2018-07-22 17:28:20

C++ 动态分配二维数组

C++ 动态分配二维数组(1) 使用new分配二维数组#include<iostream>using namespace std;int main(){ // new动态分配二维数组 int row_num, col_num; // row_num:行数;col_num:列数 cin >> row_num >> col_num;...

2018-07-21 10:56:13

2019CVTE提前批笔试 —— 源串修改为目标串共操作的次数

2019CVTE提前批笔试 —— 源串修改为目标串共操作的次数 (2013Google笔试题)给定一个源串和目标串,能够对源串进行如下操作:       (1) 在给定位置上插入一个字符;       (2) 替换任意字符;       (3) 删除任意字符。写一个程序,返回最小操作次数,使得对源串进行这些操作后等于目标串。示例:输入:“kitten” (源字符串src),“s...

2018-07-21 10:31:54

2019CVTE提前批笔试题 —— 从第一个字符串中删除第二个字符串中没有的元素

2019CVTE笔试题 —— 从第一个字符串中删除第二个字符串中没有的元素样例:输入:"Welcome CVTE"      "KEem"输出:"emeE"代码如下:#include<iostream>using namespace std;char *deleteChar(char *str1, char *str2){ if (nullptr ==...

2018-07-20 21:10:07

归并排序

归并排序归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。基本思路:先递归的把数组划分为两个子数组,一直递归到数组中只有一个元素,然后再调用函数把两个子数组排好序,因为该函数在递归...

2018-07-17 16:12:18

C++运行时类型识别RTTI和显式转换+如何根据基类指针判断指针指向的子类?

运行时类型识别RTTI和显式转换C++用于类型转换的4个操作符:reinterpret_cast,const_cast,static_cast,dynamic_cast。转换形式:cast_name<type>(expression)(1) reinterpret_cast:本质上依赖于机器,非常危险,避免使用。(2) const_cast:改变表达式的常量属性(添加或...

2018-07-17 11:38:56

2019深信服笔试 —— 猎人抓兔子

2019深信服笔试 —— 猎人抓兔子题目描述:       假设兔子有n个排成一排的洞,编号为1和n。兔子每天晚上跳到相邻的一个洞里住,而猎人每天白天检查其中的一个洞。猎人告诉你每天检查的洞的编号,希望你分析一下是否一定能抓到兔子。输入描述:       首先输入n和k(n,k<1000),分别表示洞的个数和猎人要检查的天数;接下来输入k个整数,表示猎人每天检查的洞的编号。...

2018-07-16 15:45:48

C++继承与虚函数

 本篇文章针对面试过程中继承以及虚函数方面的知识做一总结,查缺补漏,希望对大家有帮助。单继承下的虚函数表//单继承下虚函数表:是如何组织的class A{public: virtual void func(){ cout << "A::func" << endl; } virtual void funcA(){ cout << "A::funcA" <...

2018-07-15 10:12:48

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。