摘要: TopK算法: https://www.cnblogs.com/lxy-xf/p/11338652.html 二叉树的直径: leetcode543: 给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过根结点。 思路: 很简单的遍历二叉树, 阅读全文
posted @ 2019-08-13 12:03 李湘沅 阅读(822) 评论(0) 推荐(0) 编辑
摘要: 剑指OFFER上的一道原题,钻了个牛角尖 求二进制中1的个数 问题出现在负数,因为要保持负数的性质,所以对负数进行右移操作后将在首位重新补1,若干次右移后将变为0xFFFFFFFF. 如果要去掉负数的符号位,可以考虑用: int a=-127; a=a^(0x80000000); 0x8000000 阅读全文
posted @ 2019-08-13 08:39 李湘沅 阅读(3171) 评论(0) 推荐(0) 编辑
摘要: 进程与线程的概念,以及为什么要有进程线程,其中有什么区别 进程是对运行时程序的封装,是系统进行资源调度和分配的基本单位,实现了操作系统的并发; 线程是进程的子任务,是CPU调度和分派的基本单位,用于保证程序的实时性,实现进程内部的并发。线程是操作系统可识别的最小执行和调度单位。每个线程都独自占用一个 阅读全文
posted @ 2019-08-12 16:50 李湘沅 阅读(1543) 评论(0) 推荐(0) 编辑
摘要: TopK算法,用于寻找若干个数据中最大或最小的K个数。 实现TopK有两种方法,一种是基于快排的思想,一种是基于堆排的思想。 他们区别在于: 快排:时间复杂度O(n) 需要修改输入数组 不能处理海量数据,因为内存不够加载 堆排:时间复杂度O(nlogk) 不需要修改输入数组 可以处理海量数据 基于快 阅读全文
posted @ 2019-08-12 11:21 李湘沅 阅读(5628) 评论(2) 推荐(0) 编辑
摘要: 在看剑指offer时遇到了这个题目:寻找旋转排序数组中的最小值 II 假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。 请找出其中最小的元素。 注意数组中可能存在重复的元素。 看到这个题目第一时间就 阅读全文
posted @ 2019-08-12 09:19 李湘沅 阅读(149) 评论(0) 推荐(0) 编辑
摘要: map和set有什么区别,分别又是怎么实现的? map和set都是C++的关联容器,其底层实现都是红黑树(RB-Tree)。由于 map 和set所开放的各种操作接口,RB-tree 也都提供了,所以几乎所有的 map 和set的操作行为,都只是转调 RB-tree 的操作行为。 map和set区别 阅读全文
posted @ 2019-08-11 16:57 李湘沅 阅读(183) 评论(0) 推荐(0) 编辑
摘要: static关键字的作用: 1. 全局静态变量 作用域:全局静态变量在声明他的文件之外是不可见的,准确地说是从定义之处开始,到文件结尾(只在本cpp内可见)。 2. 局部静态变量 作用域:作用域仍为局部作用域,当定义它的函数或者语句块结束的时候,作用域结束。但是当局部静态变量离开作用域后,并没有销毁 阅读全文
posted @ 2019-08-09 16:25 李湘沅 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 插入排序: 1).直接插入排序: 假设当前排序到了第i个元素arr[i],则此时i左侧[0,i-1]已经有序,对于arr[i]来说,如果arr[i]>=arr[i-1],则不用排序,直接进入[i+1];否则要在左侧有序表中找到一个合适的位置j令arr[j]<=arr[i]<arr[j+1]。 每一趟 阅读全文
posted @ 2019-08-09 11:46 李湘沅 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 转载自http://www.cnblogs.com/codingmylife/archive/2012/10/21/2732980.html 分析一下常见的排序算法的稳定性,每个都给出简单的理由。 冒泡排序冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个 阅读全文
posted @ 2019-08-08 15:39 李湘沅 阅读(8504) 评论(0) 推荐(3) 编辑
摘要: 考虑以下这种情形: 目前有若干个消费者,一个生产者,现在流水线队列中已满,生产者在: 生产者在notFull.wait()中陷入阻塞。 此时某个消费者拿走了一个产品,并通过notFull.notify()通知生产者队列未满,可以生产。 生产者从wait中醒来,再次竞争锁。 但很不幸,这个锁再次被另外 阅读全文
posted @ 2019-08-07 21:12 李湘沅 阅读(185) 评论(0) 推荐(0) 编辑