
笔记
文章平均质量分 65
Admin-fqw
加油^0^~程序员
展开
-
递归的概念
递归:通俗的来说,递归就是自己调用自己,每次调用的时候传入不同的参量。原创 2023-04-22 16:29:31 · 150 阅读 · 0 评论 -
双指针的相关练习
3.当快指针移动到所指元素的值不相等时,先将慢指针后移一位然后将快指针所指元素赋给慢指针所指的位置。2.当快慢指针所指的元素的值相等时,快元素向后移,慢指针不动,慢指针指向元素第一次出现的位置。3.right向前遍历,遇到目标值就向前移,直到遇到不是目标值,这时和left指针交换元素。1.定义两个指针(双指针法)通过一个快指针和慢指针在一个循环下完成两个循环的工作。2.比较两端的平方值的大小,将较大的平方值填入新数组的末尾,并向内移动指针。4.快指针 寻找新数组的元素 ,新数组就是不含有目标元素的数组。原创 2023-04-17 22:30:55 · 110 阅读 · 0 评论 -
单向链表的实现
/定义节点 // data域 以水浒传为例 public int no;//排名 public String name;//next域 public HeroNode next;//节点构造器 public HeroNode(int no , String name , String nickname) {} }原创 2023-04-16 10:20:44 · 94 阅读 · 0 评论 -
环形队列的实现
判断队列是否满,因为这是一个环形队列所以不能用rear==maxSize-1来判断,我们知道rear指向队列尾的后一个位置,那么既然是环形的,后一个位置加一就是队列头的位置,这里要考虑既然是环形的就不能一直往上加,当超过最大或等于最大容量我们就取余,这样就避免了索引越界的异常。获取队列元素,出队,因为front指向的位置是队列头所在位置,那么就要先保存队列头所在位置,然后再将front后移,因为这是一个环形队列要考虑索引越界异常,所以后移的方法是front=(front+1)%maxSize。原创 2023-04-15 11:25:00 · 69 阅读 · 0 评论 -
数组实现简单队列
定义好了以后我们需要知道队列什么时候满了,当添加数据到队列时,队列头不动,队列尾加入数据,即rear先自增,然后加入数据,那么,当rear==maxSize-1(从零开始)时就表示队列已满。当我们测试以后会发现一个问题,就是这样实现以后队列只能用一次,为了解决这一问题我们引出环形队列的思想,请观看下集环形队列。出队列的时候,我们知道front指向队列头的前一个位置,那么将front后移就指的是队列头元素,即。我们为了更好地理解队列,就会自己写一个队列,这次我们用数组来实现队列。数组实现队列的完整代码。原创 2023-04-15 10:54:41 · 406 阅读 · 0 评论 -
稀疏数组的实现
稀疏数组是对二维数组进行简化,假如有一个棋盘,那么对棋盘的数据进行保存就会占很多内存,为了解决这一状况,就是用稀疏数组来简化二维数组。例如:以0为下棋点,1为黑棋,2为白棋 那么棋盘中有很多没有数据的点(即0),所以保存这样的数据用稀疏数组更合适。稀疏数组本质也是二维数组,它将棋盘中有效的数据提取出来,再次使用的时候,将有效数据展示出来就行了稀疏数组的第一行是个特殊行,从第二行开始,是数据保存的位置。原创 2023-04-15 10:28:35 · 48 阅读 · 0 评论 -
第五章 常用类
Object,String,API,Math,Date原创 2022-07-12 14:31:24 · 189 阅读 · 0 评论 -
冒泡排序与选择排序
冒泡排序与选择排序冒泡排序说明:每次取出相邻元素,较大的(或较小的)向后移一位。对于一组包含n个数据的记录,冒泡排序在最坏的情况下需要进行n-1趟排序第1趟:依次比较0和1、1和2、2和3…(n-2)和(n-1)索引的元素,如果发现第1个数据大于第2个数据,交换他们,经过第1趟排序,最大的元素排到了最后第2趟:依次比较0和1、1和2、2和3…(n-3)和(n-3)索引的元素,如果发现第1个数据大于第2个数据,交换他们,经过第2趟排序,第二大的元素排到了倒数第二个位置…第n-1趟:比较0和1索原创 2022-05-03 11:24:29 · 116 阅读 · 0 评论