Java基础
4tong
这个作者很懒,什么都没留下…
展开
-
归并排序
归并排序采用分治法,将已有序的子序列合并,得到完全有序的序列。即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。 //合并两个有序数组 public static void merge(int[] array,int low,int mid,int high){ int[] tmp = new int[high-low+1]; int k = 0;//数组下标 int s1 = low;原创 2021-05-14 22:53:34 · 79 阅读 · 0 评论 -
交换排序
交换排序冒泡排序在无序区间,通过相邻数的比较,将最大的数冒泡到无序区间的最后,持续这个过程,直到数组有序public static void bubbleSort(int[] array){ for (int i = 0; i < array.length-1; i++) {//i代表趟数 for (int j = 0; j < array.length-1-i; j++) { if (array[j] > ar原创 2021-05-14 20:05:33 · 71 阅读 · 0 评论 -
选择排序
选择排序直接选择排序每一次从无序区间内选出最小(或最大)的元素放在无序区间的最前(或最后),直到待排序数组全部排完。public static void selectSort(int[] array){ for (int i = 0; i < array.length; i++) { for (int j = i+1; j < array.length; j++) { if (array[i] > array[j原创 2021-05-14 18:08:12 · 70 阅读 · 0 评论 -
插入排序
插入排序直接插入排序先将 i 放在数组1下标,j 在数组的0下标,遍历数组,定义一个tmp保存i下标的值循环比较tmp的大小和 j 下标的值,把大的值放在后面,j - -当 j 遍历完数组或者不满足 j 下标值大于tmp时,将tmp赋给j+1public static void insertSort(int[] array){ for (int i = 1; i < array.length; i++) { int tmp = array[i];原创 2021-05-14 17:49:01 · 81 阅读 · 0 评论 -
比较两个二叉树是否相同
比较两个二叉树是否相同思路:两个二叉树不能其中一个为空两个二叉树的根必须相同两个二叉树对应的每一个节点的结构相同,对应的值也相同例如:每个节点值相等,结构相同 true每个节点值相等,但结构不相同 false两个二叉树结构相同但对应节点的值不相等 false代码示例: public boolean isSameTree(TreeNode p, TreeNode q) { if(p==null && q==null) return原创 2021-05-02 20:17:46 · 1319 阅读 · 0 评论 -
二叉树的基本操作
二叉树的基本操作定义一个Node类,来表示二叉树中的一个节点class Node{ public char val; public Node left; public Node right; public Node(char val){ this.val = val; }}定义一个BinaryTree类,在类中实现以下函数public class BinaryTree { public Node root;//根节点}二叉树的原创 2021-05-02 20:03:51 · 50 阅读 · 0 评论 -
创建一个图书管理系统
创建一个图书管理系统文章目录创建一个图书管理系统核心需求类的设计创建图书相关的类创建操作相关的类实现每一个Operation创建用户相关的类整合总结核心需求登录管理端查找图书增加图书删除图书打印图书退出系统用户端查找图书借阅图书归还图书退出系统类的设计创建图书相关的类建一个包package bookpackage book;创建一个Book类 新建一本书public class Book { private String name;//书名原创 2021-04-23 23:39:59 · 1217 阅读 · 2 评论 -
Java实现一个双向链表
Java实现一个双向链表定义一个ListNode类,来定义一个双向链表的节点class ListNode { public int val; public ListNode prev;//节点的前驱 public ListNode next; public ListNode(int val) { this.val = val; }}定义一个MyDoubleList类,在类中实现以下函数public class MyDoubleList {原创 2021-04-22 11:06:09 · 349 阅读 · 2 评论 -
Java实现一个链表
Java实现一个链表概念链表是一种物理存储结构上非连续的存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序来实现的。物理上不一定连续,逻辑上一定是连续的。链表的8种结构单向、双向带头、不带头循环、非循环无头单向非循环链表的实现定义一个Node类,来定义链表中的一个节点class Node { public int val; public Node next; public Node(int val){ this.val = val;原创 2021-04-20 21:43:42 · 299 阅读 · 0 评论