- 博客(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
600
原创 优先级队列的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
341
原创 二叉查找树(二叉搜索数)增、删、三种遍历的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
192
原创 基于逻辑异或的数字加密
基于逻辑异或的数字加密 1. 算法思想 根据一个二进制数字异或操作两次另一个二进制数字可以还原的特性,可以得到一个简单的数字加密算法 2.我们需要的必要元素 待加密数字 加密密钥 3.加密计算过程 将待加密数字转为二进制(这一步在编程中不需要操作) 确定加密密钥(确定下一个特定的数字作为密钥) 将待加密数字与密钥做异或运算得到加密后的数字 4.解密计算过程 拿到密文 拿到加密密钥 将密文与加密密钥做异或运算即可得到原数据 5.注意 密钥是加密和解密的关键,所以需要隐秘告知解密方,否则加密将失去意
2021-11-20 17:57:01
4549
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅