- 博客(7)
- 收藏
- 关注
原创 Heap的java实现
heap是一种特殊的二叉树,始终将最大值或最小值留在二叉树根节点上,分别是MaxHeap和MinHeap实现MinHeap与MaxHeap的实现区别在于大小比较相反这里以MaxHeap实现为例,本场景下使用数组操作更方便,所以此处使用数组实现public class MaxHeap { private int capacity; private int size = 1; private int[] tree; public MaxHeap(int capacity) { this.c.
2021-12-29 18:11:24 538
原创 优先级队列的java实现
public class PriorityQueue { public PriorityQueue() {} class Node{ int value; int priority; Node next; public Node(int value,int priority) { this.value = value; this.priority = priority; } } private Node head; public void push(int valu
2021-12-29 18:04:31 289
原创 二叉查找树(二叉搜索数)增、删、三种遍历的java实现
实际上,如果不采用换节点的方式,而采用替换数据的方式,操作会更简单,但是为了清楚的表现出算法思想,这里采用换节点的方式public class BinaryTree { class Node{ int value; Node left; Node right; Node(int value){this.value = value;} } private Node root; public Node getRoot() { return this.root; } // add
2021-12-28 19:00:04 163
原创 基于逻辑异或的数字加密
基于逻辑异或的数字加密1. 算法思想根据一个二进制数字异或操作两次另一个二进制数字可以还原的特性,可以得到一个简单的数字加密算法2.我们需要的必要元素待加密数字加密密钥3.加密计算过程将待加密数字转为二进制(这一步在编程中不需要操作)确定加密密钥(确定下一个特定的数字作为密钥)将待加密数字与密钥做异或运算得到加密后的数字4.解密计算过程拿到密文拿到加密密钥将密文与加密密钥做异或运算即可得到原数据5.注意密钥是加密和解密的关键,所以需要隐秘告知解密方,否则加密将失去意
2021-11-20 17:57:01 4488
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人