- 博客(32)
- 资源 (3)
- 收藏
- 关注
原创 Redis之6———sorted set类型详解
1 redis 有序集合:sorted setRedis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复。 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。2 sorted set的操作序号 命令及描述 1 ZADD key score1 member1 [score2 mem
2020-05-30 17:24:42 180
原创 剑指offer刷题————二叉搜索树的后序遍历序列
问题重述:题目:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回true,否则返回false.假设输入的数组任一两个数组都不相同。思路解析:首先这个数组是搜索二叉树的后序遍历,因为搜索二叉树满足左小右大的规则,并且后序遍历中最后一个遍历的是根节点,因此,我们能根据最后一个数字将数组分为两部分,前面的一部分都比最后一个节点小,后面的一部分都比最后一个节点大。因此,整体思路是这样的:将最后一个数字作为根节点提出来,从头开始和这个数字进行比较,当遇到第一个比根节点大的数
2020-05-29 17:43:08 206
原创 线性时间选择(分治):找出一组数中的第k小元素||C++
问题是这样的,有一组数据,请找出这组数据中的第k小的元素。这个问题为什么叫线性时间选择,我至今没有弄清楚,忘大家能给解释以下。我在这里给出上述问题的代码:这里利用的是快排的分割算法。是采用分治法的思想,即将问题划分规模更小的子问题。代码如下:#include<iostream>using namespace std;int quick(int* arr, int start, int end){ int low = start; int high = end;
2020-05-28 22:28:07 1056
原创 有两个大小都为n升序的int数组。查询第n小的数值(分治)||C++实现
这道题和leetcode上的第 4到算法题非常类似。这道题我们采用二分法(分治)的方式来进行解决。思路如下(这里参考leetcode中的官方解析):假设两个有序的数组A和B。要找到第k个元素,我们可以比较A[k/2-1]和B[k/2-1]。由于A[k/2-1]和B[k/2-1]前面分别有k/2-1个元素(从0开始记),那么对于A[k/2-1]和B[k/2-1]中的最小者,前面最多会有(k/2-1)+(k/2-1)<=k/2-2个元素比它小,那么它就不可能是第k小的数。因此我们可以归纳出三种
2020-05-27 22:27:10 341
原创 能否由先序遍历和后序遍重建二叉树?
答:不能,因为当树的节点存在单个叶子节点的时候,是不能确定树的结构的。举个例子:假如一棵树的先序遍历为:6,7,后续遍历为7,6,那么如下图两个结构都是满足条件的。
2020-05-22 17:04:50 928
原创 剑指offer刷题————从上往下打印二叉树
问题重述:题目:从上往下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。思路分析:这个问题很简单,即使二叉树的层次遍历。代码实现:/*struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { }};*/class Solution {public: v
2020-05-21 20:38:17 127
原创 求二叉树中两个节点的最近公共祖先节点
直接上代码把://查找二叉树结点的公共父节点//递归方法求解BiTree* LowestCommonAncestorInBinaryTree (BiTree *Root,char p,char q){ //真实传参应为(BiTree *Root,BiTree p,BiTree q) //这里只是为了测试 if(!Root) return NULL; //if(Root==p||Root==q) //真实代码 // return Root; if(R
2020-05-20 16:54:46 987 2
原创 求二叉树第K层节点的个数和二叉树中叶子节点数
1 求二叉树第K层节点的个数由于二叉树特殊的性质,因此大部分二叉树的问题都可以通过递归的方法来解决。求二叉树第K层节点的个数,可以想到层次遍历的方法,但是这个问题也可以通过递归的方法来解决,代码如下:int GetNodeNumK(Node *root,int k){ if(!root||k<1)return 0; //应该还要确定k不大于最大的层数,应该在调用此函数之前确认这一点,这里不再判断 if(k==1)return 1; return GetN
2020-05-17 15:22:27 2934
原创 三行代码求二叉树的节点个数以及二叉树的深度
二叉树的节点格式如下:struct BinaryTreeNode{ int m_nValue; BinaryTreeNode* m_pLeft; BinaryTreeNode* m_pRight;};1.求二叉树的节点个数这道题比较简单,使用随便一种遍历方式,在遍历的途中将节点个数记录下来即可,但是这样要声明一个静态变量去记录节点个数。为了简便,用递归的方式来实现:int Count(binaryTreeNode* t){ if (t == NULL) return 0
2020-05-16 18:56:57 987
转载 MySQl分库分表
为什么要分库分表, 那当然是由于数据量太大了导致数据库访问效率越来越低, 而且我们在设计服务器后台数据库的时候, 一定是会根据不同的业务类型, 把同类型业务的数据放到相关的数据库以及表当中, 也就是分库分表! 在数据量超大的时候, 比如几亿条数据量的时候, 使业务模块和数据库在交互的时候不至于失控(无效的查询, 多余的查询, 效率低下)。目录1 分库1.1 按照功能分库1.2 安装城市站分库2 分表2.1 水平分割:解决表行数过大的问题2.1.1 按照用户或业务编号分表.
2020-05-16 13:56:31 170
原创 MySQL数据库看这里:总结篇
关于MySql所有内容我差不多都整理过了,在此列个目录:详谈数据库泛型:第一、二、三、四和BCN范式MySql数据类型和运算符总结MySql数据库操作:创建数据库、删除数据库和数据库存储引擎MySql数据库表操作:创建表、删除表、查看表、修改、查询表(详细)、设置表的字符编码惊!MySql数据库插入、更新与删除数据居然这么简单MySql数据库索引详解,索引看这一篇就够了MySql数据库优化之SQL和索引的优化MySql数据库优化:应用优化和MySql Server优化My
2020-05-16 13:26:06 125
原创 牛客网错题笔记:C/C++专项 :1-10
1 32位平台上struct{unsigned char a,int b,short c}s;请问s的起始地址下面说法正确的是哪一个?()正确答案应该是四字节对齐,因为起始地址应该按照结构体中最大类型的大小对齐。2 请问以下说法哪个是正确的:对于选项A,如果定义了有参数的构造函数时,编译器不再提供无参数的默认构造函数。选项B:拷贝构造函数可以定义为删除的,即为没有。选项D;析构函数只能有一个,因此,正确答案为C3 浮点数算数标准是以下哪一个?A:posix ...
2020-05-14 22:46:40 2809
原创 MySql数据库优化:应用优化和MySql Server优化
本文章包括两部分内容,都是关于MySql优化的,一个是应用优化,另一个是MySql Server的优化。
2020-05-12 21:44:09 313
原创 MySql数据库优化之SQL和索引的优化
索引的优化是面试中数据库部分可以说是必问的问题,这个和平时的积累有关。本文详细介绍了SQL和索引的优化。
2020-05-11 20:54:14 3162 1
原创 MySql数据库表操作:创建表、删除表、查看表、修改、查询表(详细)、设置表的字符编码
表的操作是数据库中的重要内容,在此总结一下MySql数据库的表操作。目录1 创建表2 删除表3 查看表4 修改表5 查询表6 设置表的字符编码1 创建表创建表的SQL语句格式如下:CREATE TABLE 表名(属性名 数据类型 [完整性约束条件], 属性名 数据类型 [完整性约束条件],...
2020-05-07 18:18:38 15136
原创 MySql数据类型和运算符总结
MySQL作为关系型数据库,在二维表中存数据,肯定要规定数据的类型,类型规定了数据的大小,因此使用的时候选择合适的类型,不仅会降低表占用的磁盘空间,间接减少了磁盘I/O的次数,提高了表的访问效率,而且索引的效率也和数据的类型息息相关。
2020-05-03 11:18:35 413
原创 详谈数据库泛型:第一、二、三、四和BCN范式
MySQL是研发方向在校招中必考的内容,本文属于MySQL的基础知识,在工作中一定会用到,其中数据库范式还是校招考察的重点问题,怎样设计出遵循数据库范式的表?希望大家好好的学习理解范式设计。
2020-05-03 11:05:14 2760
原创 浅谈Linux-I/O复用【select、poll、epoll】+详细使用示例
本位介绍了I/O复用,对select、poll和epoll做出一定的分析,同时又有个人理解,并给出了详细的代码示例,欢迎大家参阅。
2020-05-01 15:49:37 533
Maven教程.pdf
2019-10-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人