数据结构
叶赫那拉坤
这个作者很懒,什么都没留下…
展开
-
算法:C++实现大数相乘
大数相乘,是指那些相乘结果或是乘数本身用long long类型都会溢出的数字,通常这些数字都通过string类型进行表示,借助于可动态调整大小的数据结构(vector,string,deque)模拟实现数字的乘法操作。原创 2017-08-02 08:53:32 · 10577 阅读 · 0 评论 -
算法:C++实现BCD进制转换
BCD转化原创 2017-08-10 16:15:35 · 1078 阅读 · 0 评论 -
算法:C++实现二分查找
事出有因,昨晚内推笔试题,采用遍历的方式提示耗时,由于系统原因(忍不住再次吐槽一下考试系统,估计是单线程队列模式),本地测试通过但是系统提交不上去,好不容易提交上去发现没通过全部的测试用例,当考虑用二分查找方式实现时时间已耗完。题目:新兵入队,编号从1开始依次递增(10个人的话编号是1-10),共分成N个队伍,指定每个队伍中的人数并分配新兵(按照编号顺序),然后随机选取Q个测试qi(i=1-Q),指原创 2017-08-20 09:25:03 · 603 阅读 · 0 评论 -
语法:STL中的有关二分查找的算法
STL加入C++11标准为C++注入了新的活力,其中提出的泛型编程为C++程序带来了翻天覆地的变化,一些泛化的算法实现让编程变得简单高效。STL 中有关二分查找的算法主要有三个:lower_bound、upper_bound、binary_search。参照《STL源码分析》对三个算法做个笔记。lower_bound指向一个前闭后开区间[first,last)中大于等于指定值value的最小元素坐翻译 2017-08-20 09:59:23 · 495 阅读 · 0 评论 -
算法:C++中的堆排序
堆中元素的排列方式分为两种:max-heap或min-heap,前者每个节点的key都大于等于孩子节点的key,后者每个节点的key都小于等于孩子节点的key。 由于堆可以看成一个完全二叉树,可以使用连续空间的array来模拟完全二叉树,简单原始的实现如下:#include<iostream>int heapsize=0;//全局变量记录堆的大小void heapSort(int array[原创 2017-08-13 16:08:06 · 490 阅读 · 0 评论 -
数据结构:大数据索引从二叉查找时到B+树
对数据结构有了解的小伙伴一定知道二叉树、二叉搜索时、平衡二叉搜索树、红黑树、B-树、B+树……等会儿,有点蒙蒙的感觉,出现即合理,那他们各自的优势在哪?最近在复习数据结构,查找了一些资料,现在整理一下,希望我没有理解错,再就是对看这篇文章的人有一丢丢帮助。二叉树: 单纯的二叉树并没有什么太多吸引人的地方,只是将数据按照树状结构组织在了一起,对于非连续的数据的存储,相比数组来说会节省非常可观的空间原创 2017-07-30 11:15:22 · 525 阅读 · 0 评论 -
一个常见的编程题(C++版)
华为历年经典笔试题解析转载 2017-08-21 18:32:45 · 1286 阅读 · 0 评论