自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 索引最大堆

      普通堆(本文仅以最大堆为例)的局限性主要有以下两点:  1.如果原始待排序或者求最值的数据元素很大,交换它们的位置性能损耗。  2.元素在堆化后的数组中位置不确定,只能过遍历找到。       解决上述两个弊端就是用索引的方式,二叉树的节点里存储的不再是原始数据,而是原始数据在数组中的索引。在插入弹出操作中的上浮下沉比较交换中,比较大小仍然是原始数据,但交换和、上浮下沉就是对于原始数据...

2018-05-30 15:00:10 188

原创 优先队列

       优先队列是一种特殊的队列,只是弹出元素时弹出的是(权重或者某个指定key)最大的元素。基于有序数组、无序数组、有序链表的实现类似于栈和队列的算法,这里说说基于完全二叉树的最大堆实现。       完全二叉树的层次遍历序列和数组的索引顺序完全一致,这里用数组来存储二叉树的节点值,数组索引之间的关系可以表示树节点的父子关系:某节点在数组中索引为k,其父节点索引为k/2,左右子节点为2k和...

2018-05-30 14:38:37 343

原创 哈希算法初探

        在java中,任何对象的HashCode()方法在默认情况下把对象物理地址先转成整数,再把整数计算Hash码,当然对于一些复杂的抽象数据类型也可以把自定义key转换成Hash码。        这里计算Hash码的过程就是哈希函数的工作,哈希函数在理想条件下要具有3个性质:1.确定性 2.便于计算 3.将key均匀映射散布。当然现实情况肯定不可能,那就要解决hash码冲突的问题。因...

2018-05-18 16:45:29 304

原创 数独问题暴力搜索

       数独问题在leetcode中有36. Valid Sudoku和37. Sudoku Solver两道,数独规则有三条:                1.每一行数字在1-9不能重复。                2.每一列数字在1-9不能重复。                3.在所属特定的3*3邻域内的数字1-9不能重复。        37. Sudoku S...

2018-05-17 13:06:45 767

原创 Leetcode-129. Sum Root to Leaf Numbers

这是一道深度优先搜索(递归)的二叉树题目,题意简洁易懂。递归函数写之前尤其是构思的时候感觉比较乱,但是在真正写的时候,只要你的思维停在当前状态然后一步步向下,稀里糊涂就写出来了,并且十分简洁。好吧,直接上思路,见注释。 public static int sumNumbers(TreeNode root) { //递归终止条件不是空节点,也就是空节点不能进入递归函数,leetcode经常...

2018-05-08 14:01:23 176

原创 八皇后问题

八皇后问题规则:8*8棋盘上,棋子所在行、列、主对角线、副对角线方向没有棋子,最终摆满8个棋子。在棋盘问题上经常采用深度优先搜索来解决,搜索每前进一步都要判断位置的合法性,合法则继续向前搜索,不合法则后退到上一个位置,尝试上一个位置的其他方向。从棋盘行来看,每行(列)必然有一个棋子。我们可以逐列摆一个棋子,这样的话不存在两个棋子在同一列上,在设置三个全局变量用于记录棋盘的8、15条主对角线...

2018-05-07 12:39:47 338

原创 迷宫问题的递归和非递归解法

迷宫问题一般可以建模为一个二维数组,二维数组的值表示位置(i,j)是否可以通行,将位置数据结构设为每个格网的数据结构public class Loc { int row_idx; int col_idx; Loc pre; boolean pass; boolean visited; public Loc(int i,int j,Loc pre,boolean pass,...

2018-05-05 20:37:02 2739

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除