算法
程序员-小李
长路漫漫,任重而道远
展开
-
斐波那契数列的算法思路和Java代码实现
斐波那契数列的算法思路和Java代码实现。原创 2023-03-24 19:46:33 · 401 阅读 · 0 评论 -
Java实现【单链表】基础操作
关于链表 链表是有序的列表 链表是以节点的方式来存储 每个节点包含data域,next域(指向下一个节点) 分带头节点的链表和没有头节点的链表 定义一个节点: package linkedQueue; public class HeroNode { public int no; public String name; public String nickname; public HeroNode next;//指向下一个节点 public HeroNod.原创 2022-02-08 21:33:38 · 541 阅读 · 0 评论 -
Java数组模拟【队列】与优化
队列 概念:队列是一个有序列表,可以用数组和链表实现,遵循先入先出原则。 数组模拟队列 往队列存存数据时称为【addQueue】,思路分析: 将尾指针往后移,即rear+1,当front==rear时,队列为空 若尾指针rear小于队列的最大下标maxSize-1,则将数数据存入rear所指的数组元素中,否择无法存入数据。 当rear=maxSize-1时,队列为满 package day6; public class ArrayQueue { private int maxSize;//最大原创 2022-02-07 13:53:46 · 358 阅读 · 0 评论 -
二维数组与稀疏数组互相转化【实例演示】
二维数组转化为稀疏数组的实现 思路: 创建原始数组并初始化 遍历原始数组中符合条件的数组元素,并计数 稀缺数组创建(稀缺数组的大小中X由步骤2的计数值+1得出,Y固定为3),并初始化(稀缺数组的第一行是关于原始数组的信息,第一行第一个存的是原始数组的行的个数,第一行第二个存的原始数组列的个数,第一行的第三个存的是在原始数组中符合条件的元素个数。 再次遍历原始数组,将符合条件的元素的位置坐标和值存入稀缺数组中。 案例:将原始数组中“非零”元素存到稀缺数组中 package day5; public..原创 2022-02-03 21:27:29 · 452 阅读 · 0 评论 -
选择排序实现
选择排序 原理: 遍历元素找到最小的值放到第一个位置,第一轮从第一个元素开始,假定第一个元素arr[0]的当前数组最小值且最小值下标是0,然后将它和后续的arr[1],arr[2],…arr[length-1],比较,如果有找到比arr[0]小的值就重新确定最小值和最小值下标,这样第一轮下来,就能找到整个数组排序后的一个有序元素。第二轮排序从数组的第二个元素开始,即arr[1],依次和后续arr[2],arr[3],…arr[length-1]做比较,有比arr[1]小的就重新确定最小值和最小值下标,第三轮原创 2022-01-09 21:06:15 · 274 阅读 · 0 评论 -
冒泡排序的几种写法
冒泡排序是每次循环的时候j都是从0开始的,并且是相邻两个元素的比较,所以第一轮比较完之后会把最大的值放到数组的最后,第二轮的时候会把第二大的值放到数组的倒数第二个位置,以此类推,最终完成整个数组的排序。 写法一: public static void bubbleSort1(int[] arr) { for (int i = 0; i < arr.length; i++) { for (int j = i + 1; j < arr.length; j++) {原创 2021-10-18 22:48:46 · 881 阅读 · 0 评论