![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
刷刷题
随便记记
我家没有法拉利
我很懒,还没有简介
展开
-
B树、B-树、B+树、红黑树的关系
B树B-tree树即B树,B即Balanced,平衡的意思。因为B树的原英文名称为B-tree,而国内很多人喜欢把B-tree译作B-树,其实,这是个非常不好的直译,很容易让人产生误解。如人们可能会以为B-树是一种树,而B树又是另一种树。而事实上是,B-tree就是指的B树。特此说明。先介绍下二叉搜索树1.所有非叶子结点至多拥有两个儿子(Left和Right);2.所有结点存储一个关键字;...原创 2019-07-15 06:45:39 · 781 阅读 · 0 评论 -
操作系统必考重点
并发与并行并发:指宏观上在一段时间内能同时运行多个程序,但任一个时刻点上只有一个程序在处理器上运行,是逻辑上的同时发生(并行更多是侧重于物理上的同时发生)。并行:指同一时刻能运行多个指令,需要硬件支持,如多流水线或者多处理器。进程与线程进程:进程是资源(CPU、内存等)分配的基本单位,它是程序执行时的一个实例。程序运行时系统就会创建一个进程,并为它分配资源,然后把该进程放入进程就绪队列,进...原创 2019-07-11 09:28:28 · 223 阅读 · 0 评论 -
【编程练习】动态规划常规题目(经典常考重点)
1 连续子数组和时间限制:1秒 空间限制:32768K 热度指数:253787本题知识点: 数组题目描述HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,...原创 2019-07-15 20:28:20 · 485 阅读 · 0 评论 -
【编程练习】替换空格
时间限制:1秒 空间限制:32768K 热度指数:1032590本题知识点: 字符串题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。replaceSpace函数体和参数已给出 ,要我们实现replaceSpace的内容,完成要求。class Solution {publ...原创 2019-07-11 18:33:20 · 132 阅读 · 0 评论 -
【编程练习】丑数
时间限制:1秒 空间限制:32768K 热度指数:286110本题知识点: 穷举题目描述把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。int GetUglyNumber_Solution(int index) { if (index <...原创 2019-07-11 18:42:03 · 223 阅读 · 0 评论 -
【编程练习】第一次只出现一次的字符串
时间限制:1秒 空间限制:32768K 热度指数:279851本题知识点: 字符串算法知识视频讲解题目描述在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).int FirstNotRepeatingChar(string str) { int len=str....原创 2019-07-11 19:15:48 · 201 阅读 · 0 评论 -
【编程练习】斐波那契数列的三种算法实现
数列说明f(n)=f(n-1)+f(n-2) (n>2)f(0)=1;f(1)=1;递归实现:#include<stdio.h>#include<stdlib.h>long long Fib(long long N){ if (N < 3) return 1; else return Fib(N -...原创 2019-07-12 11:59:44 · 571 阅读 · 1 评论 -
【编程练习】多线程编写一个存在死锁的代码
昨天的面试被这个问题挂了,平时忽略了这方面的学习,这里补一下这里的知识。多线程的基础这篇里有讲:https://blog.csdn.net/weixin_44611644/article/details/95453398或者参考c++多线程|菜鸟教程 直接搜得到。下面给出我的c++简单代码。变量x1,x2代表2个资源,值为1时相当于可以访问,值为0时代表被某一线程锁住,其他线程不能访问。#...原创 2019-07-24 09:04:16 · 551 阅读 · 0 评论 -
【编程练习】数据结构基础之图的深度与广度优先搜索
不多说 直接上代码吧 ,比较容易理解,如果有bug自行调试一下#include<cstdio>#define N 15 int G[N][N],int Nv; // 边数int Ne; // 顶点数bool Visited[N]; void InitVisit(){ // 初始化访问变量 for(int i=0;i<N;i++) ...原创 2019-07-24 09:32:26 · 188 阅读 · 0 评论 -
【编程练习】TSP问题与最短路径
TSP暴力枚举法:此方法不适合城市个数>8的。时间复杂度成阶乘上升#include <iostream>#include <cstdio>#include <cstring>using namespace std;#define maxx 9999int l[maxx][maxx];//存储两个城市之间的距离int n;//城市数量int...原创 2019-07-24 09:45:43 · 2876 阅读 · 0 评论 -
【编程练习】二叉树相关算法(二)
二叉树的第一部分算法如下https://blog.csdn.net/weixin_44611644/article/details/95897436下面是第二部分的二叉树题目(1)知道前序和中序之后,重建二叉树前序遍历的特点是第一个值为根节点,中序遍历的值是根节点在中间,利用此规律对数组进行分割归并。TreeNode* reConstructBinaryTree(vector<in...原创 2019-07-24 09:57:20 · 176 阅读 · 0 评论 -
【编程练习】sort()排序函数
sort()函数是c++一种排序方法之一,学会了这种方法也打消我学习c++以来使用的冒泡排序和选择排序所带来的执行效率不高的问题!因为它使用的排序方法是类似于快排的方法,时间复杂度为n*log2(n),执行效率较高!sort函数包含在头文件为algorithm的c++标准库中,调用标准库里的排序方法可以不必知道其内部是如何实现的,只要出现我们想要的结果即可!sort函数有三个参数:(1)第一...原创 2019-07-11 15:20:49 · 798 阅读 · 0 评论 -
【编程练习】常用排序算法总结
排序的定义:重新排列表中的元素,使表中元素满足按关键字递增或递减的过程。算法稳定性如果待排序表中有两个元素Ri和Rj,关键字Ri=Rj,排序前Ri在Rj前面,某一排序算法后,Ri还在Rj前面,这个排序算法就是稳定的,否则称不稳定的。排序过程中,根据数据元素是否完全在内存中,排序算法分为两类:内部排序和外部排序。一、 插入排序插入排序是一种简单直观的排序方法,其基本思想是每次将一个待排序...原创 2019-07-11 11:30:50 · 131 阅读 · 0 评论 -
【编程练习】字节跳动笔试题04猫咪特征
(编程题) 小明是一名算法工程师,同时也是一名铲屎官。某天,他突发奇想,想从猫咪的视频里挖掘一些猫咪的运动信息。为了提取运动信息,他需要从视频的每一帧提取“猫咪特征”。一个猫咪特征是一个两维的vector<x, y>。如果x_1=x_2 and y_1=y_2,那么这俩是同一个特征。因此,如果喵咪特征连续一致,可以认为喵咪在运动。也就是说,如果特征<a, b>...原创 2019-07-09 22:23:30 · 1287 阅读 · 0 评论 -
【编程练习】用户喜好
时间限制:3秒空间限制:262144K为了不断优化推荐效果,今日头条每天要存储和处理海量数据。假设有这样一种场景:我们对用户按照它们的注册时间先后来标号,对于一类文章,每个用户都有不同的喜好值,我们会想知道某一段时间内注册的用户(标号相连的一批用户)中,有多少用户对这类文章喜好值为k。因为一些特殊的原因,不会出现一个查询的用户区间完全覆盖另一个查询的用户区间(不存在L1<=L2<=...原创 2019-07-10 08:06:21 · 682 阅读 · 1 评论 -
【编程练习】手串
时间限制:1秒空间限制:65536K作为一个手串艺人,有金主向你订购了一条包含n个杂色串珠的手串——每个串珠要么无色,要么涂了若干种颜色。为了使手串的色彩看起来不那么单调,金主要求,手串上的任意一种颜色(不包含无色),在任意连续的m个串珠里至多出现一次(注意这里手串是一个环形)。手串上的颜色一共有c种。现在按顺时针序告诉你n个串珠的手串上,每个串珠用所包含的颜色分别有哪些。请你判断该手串上有多...原创 2019-07-10 09:27:55 · 486 阅读 · 1 评论 -
【编程练习】链表必考重点算法
一、单链表反转LinkList Reserve_L(LinkList L){ if(L==NULL||L->next==NULL) return 0; LNode *p,*r; p=L->next;//指向第一个结点 L->next=NULL;//把头结点摘下来 while(p!=NULL) { r=p->next;//向后遍历 p->...原创 2019-07-14 16:35:40 · 196 阅读 · 0 评论 -
【编程练习】二叉树重点算法(一)
1、二叉树的分层遍历(宽度优先搜索)2、从上往下打印出二叉树的每个节点,同层节点从左至右打印这个和第一题基本相同,依靠vector保存访问,queue队列实现遍历vector<int> PrintFromTopToBottom(TreeNode* root) { vector<int> que; queue<TreeNode*&...原创 2019-07-14 17:16:23 · 205 阅读 · 0 评论 -
【编程练习】字符转换数字
题目描述将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0),要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0。输入描述:输入一个字符串,包括数字字母符号,可以为空输出描述:如果是合法的数值表达则返回该数字,否则返回0示例1输入+21474836471a33输出2147...原创 2019-07-14 17:24:20 · 529 阅读 · 0 评论 -
【编程练习】出现最多的数
数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。int MoreThanHalfNum_Solution(vector<int> numbers) { if(numbers.empty()) ...原创 2019-07-14 19:17:51 · 225 阅读 · 0 评论 -
【编程练习】用两个栈实现队列
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。class Solution{public: void push(int node) { stack1.push(node); } int pop() { if(stack2.empty()) { while(!...原创 2019-07-15 08:14:20 · 131 阅读 · 0 评论 -
【编程练习】二维数组中的查找算法
题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。1 最普通的查找就是循环遍历比较bool Find(int target, vector<vector<int> > array) { int hang=...原创 2019-07-15 09:27:43 · 225 阅读 · 0 评论 -
【编程练习】数组中只出现一次的数
一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。void FindNumsAppearOnce(vector<int> data,int* num1,int *num2) { map<int ,int> cont; for(int i = 0 ; i < data.size(...原创 2019-07-15 15:03:34 · 134 阅读 · 0 评论 -
【编程练习】栈的压入与弹出模拟
时间限制:1秒 空间限制:32768K 热度指数:359923本题知识点: 栈算法知识视频讲解题目描述输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长...原创 2019-07-15 15:34:14 · 272 阅读 · 0 评论 -
【编程练习】点集运算
时间限制:1秒空间限制:32768KP为给定的二维平面整数点集。定义 P 中某点x,如果x满足 P 中任意点都不在 x 的右上方区域内(横纵坐标都大于x),则称其为“最大的”。求出所有“最大的”点的集合。(所有点的横坐标和纵坐标都不重复, 坐标轴范围在[0, 1e9) 内)如下图:实心点为满足条件的点的集合。请实现代码找到集合 P 中的所有 ”最大“ 点的集合并输出。输入描述:第一行输...原创 2019-07-12 20:32:16 · 896 阅读 · 0 评论