计算机编程基础知识
melody96313
这个作者很懒,什么都没留下…
展开
-
二叉树
1、二叉搜索树和双向链表二叉搜索树结构:左子节点比根节点小,右子节点比根节点大查找和插入的步骤类似,但是插入是失败的查找,它要找到一个空的左子结点或者右子结点。它们的算法复杂度都是O(logn),与二叉树的高度有关。即:较平衡的二叉树对应较低的复杂度。因此,出现了AVL二叉搜索树,也就是对它的结构有了更严格的要求。它的任一子树,左子树和右子树的高度的绝对值之差不超过一。每个节点都可以用平衡因子这个...原创 2018-05-18 00:18:28 · 137 阅读 · 0 评论 -
编程基础知识、算法(一)
1、哈希表(散列表)hash_map基于hash table(哈希表)。哈希表最大的优点,就是把数据的存储和查找消耗的时间大大降低,几乎可以看成是常数时间;而代价仅仅是消耗比较多的内存。然而在当前可利用内存越来越多的情况下,用空间换时间的做法是值得的。另外,编码比较容易也是它的特点之一。它以键和值组成的对为基础。统计字符在字符串出现的次数,或是否在某字符串中出现等等这类问题可以用哈希表来处理。当字...原创 2018-05-17 12:46:22 · 42480 阅读 · 0 评论 -
leetcode刷题第一天
1、格雷码编码用递归的思想,n位的格雷码可以由n-1位的格雷码获得。前半部分,直接在最高位补零;后半部分,将n-1位的格雷码逆序,然后增加一个1的最高位。2、single number一个数组,只有一个数字出现且仅出现过一次,其他都出现过两次:异或(模2加)就可以解决了。一个数组,只有一个数字出现且仅出现过一次,其他都出现过三次:求出每一位的和,(int 一共有32位),再%33、求直方图的最大矩...原创 2018-06-21 12:45:48 · 327 阅读 · 0 评论 -
排序算法解析
排序算法可以分为外部和内部排序两大类。当要排序的数据文件过大,大过内存空间时,需要将其分成若干个子文件分别进行内部排序,然后再进行多路归并排序。我们通常讲的都是内部排序。 主要分为这几大类:插入排序(直接插入排序和希尔排序)选择排序(直接选择排序和堆排序)交换排序(冒泡排序和快速排序)归并排序 排序算法的几个指标:时间复杂度,空间复杂度(最好情况:完全有...原创 2018-08-31 21:15:02 · 148 阅读 · 0 评论 -
leetcode 11,84,85,三道典型求解面积的题
11.Container With Most Water题目描述:Givennnon-negative integersa1,a2, ...,an, where each represents a point at coordinate (i,ai).nvertical lines are drawn such that the two endpoints of line...原创 2019-04-17 23:01:03 · 368 阅读 · 0 评论 -
python 知识点
1、cast string to float is not supportedtf.cast(x,dtype=tf.float32)是不支持的如果x是一个数字,可以用,tf.string_to_number(x),来转换类型,如果不传入类型这个参数,默认输出的是float32的。2、set可以用来对列表去重,但是它是无序的如果想要按原顺序去重时一种方法为:T=list(se...原创 2019-05-12 13:41:39 · 2467 阅读 · 0 评论