算法——归并法排序

2022-3-5 diaba 算法

package com.jiucaiyuan.net.algrithm.sort; /**  * 归并法排序  *  思路:递归处理把数组分成左右两部分,左侧部分排成有序数组,右侧排成有序数组,然后再merge两个数组  *  * 算法时间复杂度是O(N*logN)  空间复杂度O(N)  * * * Created by jiucaiyuan on 2022/3/5. */ public class ReduceMergeSort { public static void sort(...

阅读全文>>

评论(0) 浏览(570)

算法——快速排序

2022-3-5 diaba 算法

package com.jiucaiyuan.net.algrithm.sort; /**  * <pre>  * 快速排序  *  一个数组arr,选择一个数做为基准m,小于等于m的数放在数组左边,大于m的数放在数组右边  *  左侧递归上述过程  *  右侧递归上述过程  *  *  荷兰国旗问题:  <m,=m,>m  *  * 时间复杂度 O(N*logN),空间复杂度 O(logN)  * ...

阅读全文>>

评论(0) 浏览(583)

算法——统计岛数量

2022-3-3 diaba 算法

package com.jiucaiyuan.net.question; /** * 统计岛数量 * 【问题】一个矩阵中只有0和1两个数值,每个位置都可以和自己的上、下、左、右四个位置相连, * 如果有一片1连在一起,这个部分叫做一个岛,求一个矩阵中有多少个岛? * 【进阶】 * 如何设计一个并行算法解决这个问题(一张地图,点特别多,需要统计时,并行解决会更快些) * <p> * P12 11.基础提升 有序表、并查集等 00:03 * * @Author jiucaiyuan 2022/3/2 23:58 * @mail s...

阅读全文>>

评论(0) 浏览(564)

算法——拿纸牌,最大积分是多少

2022-3-2 diaba 算法

package com.jiucaiyuan.net.question; /** * 拿纸牌,得到最大分数 * 给定一个整形数组arr,代表数值不同的纸牌排成一条线。玩家A和玩家B依次拿走每张纸牌, * 规定玩家A先拿,玩家B后拿,但是每个玩家每次只能拿走最左或者最右侧的纸牌,玩家A和 * 玩家B都是绝顶聪明。请返回最后胜利者的分数 * <p> * Created by jiucaiyuan on 2022/3/2. */ public class CardsSelect { /** * 给一个纸牌,拿牌规则,从最左侧或者从...

阅读全文>>

评论(0) 浏览(587)

算法——是否为平衡二叉树

2022-3-2 diaba 算法

package com.jiucaiyuan.algrithm.tree; /** * 判断树是否为平衡二叉树 * <p> * Created by jiucaiyuan on 2022/2/4. */ public class BalancedTreeSolution { //传递参数 // 1. 传入根节点 // 2. 返回是否为平衡二叉树 public static boolean isBalanced(TreeNode root) { // 退出条件 // 1. 节点为空,则...

阅读全文>>

评论(0) 浏览(623)

算法——汉诺塔

2022-3-2 diaba 算法

package com.jiucaiyuan.question; /** * 汉诺塔 * <p> * Created by jiucaiyuan on 2022/2/4. */ public class HannuoTower { public static void main(String[] args) { hannuoTower(16); } public static void hannuoTower(int n) { if (n > 0) { move...

阅读全文>>

标签: 算法 汉诺塔 递归

评论(0) 浏览(590)

输入矩阵边长打印数组

2016-2-5 diaba 算法

输入5和输入6输出效果如图: java源代码如下: package com.jiucaiyuan.recurse; public class TestSquare { public static int a[][]; public static void main(String[] args) { calc(5); print(); System.out.println("==================================="); calc(6); print(...

阅读全文>>

标签: 算法

评论(0) 浏览(2099)

B树(B-树)、B+树、B*树

2016-1-25 diaba 数据结构

B树        即二叉搜索树:        1.所有非叶子结点至多拥有两个儿子(Left和Right);        2.所有结点存储一个关键字;        3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树;   &nbs...

阅读全文>>

标签:

评论(0) 浏览(1927)

Binary Tree Paths

2015-8-18 diaba 数据结构

最近,在https://leetcode.com上开始做些算法题,因为平时不咋捉摸算法,只是工作中用到的,才会接触写,工作已经六年了,记得只有一次大概是10年时设计到一个算法题转化为纯数学题,在演算纸上演算,得到结果后,翻译为代码,以后基本上没有接触到多少算法,当然找工作前也大概看了下的。 言归正传,在leetcode上的题做些记录,从简单地开始。 题的描述:             Given a binary...

阅读全文>>

评论(1) 浏览(2311)

Powered by emlog 京ICP备15045175号-1 Copyright © 2022