随笔分类 -  数据结构与算法

数据结构和算法分析 优先队列
摘要:也可以使用普通的数组来实现优先队列,当然push复杂度为O(1),pop复杂度为O(N)。 也可以使用二叉查找树来实现,如果使用平衡树,那么插入和查找的复杂度就是所使用的平衡树的复杂度。 一般使用堆来实现优先队列。 堆: 堆是一棵完全二叉树(complete binary tree)。 由于完全二叉 阅读全文

posted @ 2017-07-17 00:31 张小贱1987 阅读(229) 评论(0) 推荐(0)

数据结构和算法分析 排序
摘要:交换次数和比较次数是衡量一部分排序算法的复杂度的 排序例子 O(N2) 这是一个人人都能实现的例子。通过循环判断,将最小的元素放在最前面。 public static void sort(int[] arr) { // 每次对比下标i到arr.length-1的值 然后将最小值放在i下标的位置 fo 阅读全文

posted @ 2017-07-15 18:18 张小贱1987 阅读(171) 评论(0) 推荐(0)

Java HashMap的工作原理(转载)
摘要:原文地址:http://www.importnew.com/10620.html 面试的时候经常会遇见诸如:"java中的HashMap是怎么工作的","HashMap的get和put内部的工作原理"这样的问题。本文将用一个简单的例子来解释下HashMap内部的工作原理。首先我们从一个例子开始,而不 阅读全文

posted @ 2017-07-09 23:39 张小贱1987 阅读(188) 评论(0) 推荐(0)

二叉查找树(转载)
摘要:原文地址: http://www.cnblogs.com/fingerboy/p/5493786.html http://www.cnblogs.com/gaochundong/p/binary_search_tree.html 树(Tree)是由多个节点(Node)的集合组成,每个节点又有多个与其 阅读全文

posted @ 2017-07-09 15:59 张小贱1987 阅读(211) 评论(0) 推荐(0)

数据结构和算法分析 表、栈和队列
摘要:表是ArrayList,LinkedList,Stack,Queue的抽象定义。我理解为有序的单数据存储。 remove方法对LinkedList类的使用 模拟一个场景,遍历一个LinkedList,将其中存储的数值是偶数的都删除。 方法一:通过下标i进行for循环,如果发现是偶数,然后使用remo 阅读全文

posted @ 2017-07-09 12:45 张小贱1987 阅读(160) 评论(0) 推荐(0)

数据结构和算法分析 引论+算法分析
摘要:数学知识复习 级数运算 常用的有: 递归算法 递归一般可以条件性的拆分为: 一个简单递归的例子:打印出正整数。基于一个只能打印一个0-9的数字的方法,打印正整数。 如果定义可以打印0-9的数字的方法为g(x),打印正整数的那么递归的推进表达式可写为为: f(x) = f(x/10) + g(x%10 阅读全文

posted @ 2017-07-06 23:08 张小贱1987 阅读(202) 评论(0) 推荐(0)

导航