摘要: 题目描述 3.实现一个将字符串按指定字符分隔的函数,形式已经确定如下,请完成标有“//请补充”的内容。 说明:返回值为是否找到分割符(true找到,false未找到),当未找到分割符时返回原字符串。 举例:SplitStr("abc|bc|c", '|', vect) 返回true, vect结果: 阅读全文
posted @ 2020-12-23 21:26 mohist 阅读(617) 评论(0) 推荐(0) 编辑
摘要: 递归实现 template<typename T> int binary_search2(const T arr[], const int left, const int right, const T key) { if (NULL == arr || nullptr == arr || 0 > l 阅读全文
posted @ 2020-12-23 18:23 mohist 阅读(395) 评论(0) 推荐(0) 编辑
摘要: 题目 有十瓶药,每瓶里都装有100片药,其中有八瓶里的药每片重10克,另有两瓶里的药每片重9克。用一个蛮精确的小秤,只称一次,如何找出份量较轻的那两个药瓶? 解法 1.分别给10个药瓶按照斐波那契数列标号: 1, 2, 3, 5, 8, 13,21, 34,55 ,89 2.取出与瓶号相同的药片: 阅读全文
posted @ 2020-12-23 17:30 mohist 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 虚函数表指针 虚函数表指针随对象走,它发生在对象运行期,当对象创建的时候,虚函数表表指针位于该对象所在内存的最前面。 使用虚函数时,虚函数表指针指向虚函数表中的函数地址即可实现多态。 虚函数表 虚函数表是在编译期间就已经确定,且虚函数表存放虚函数的地址也是在创建时被确定。 扩展 虚函数表属于类,类的 阅读全文
posted @ 2020-12-23 16:02 mohist 阅读(2215) 评论(0) 推荐(0) 编辑
摘要: 数量少(5~25),插入排序很高效 一个影响快排效率的因素就是: 基准值的选择 本文将演示一种随之法的快排 改进前 void quick_sort5(int arr[], int low, int high) { if (0 > low || 0 > high) return; if (low > 阅读全文
posted @ 2020-12-23 13:30 mohist 阅读(690) 评论(0) 推荐(0) 编辑
摘要: note 今天刷题,忘了去重复库函数,于是手写了一个。 前提: 必须保证数组是有序的。 源码 template <typename T> void unique_arr(T arr[], int len, T* parr, int& out_len) { if (1 > len || nullptr 阅读全文
posted @ 2020-12-23 12:57 mohist 阅读(1061) 评论(0) 推荐(0) 编辑