day10 快速排序 方法重载 和 方法递推

 方法重载

 


斐波拉契数列问题  使用重载思想解决 

  public static int method(int n){if (n == 2 ){return  1 ;}return (n-1)*2+method(n-1);}public  static  int f(int n){if (n == 1){return  1;}if (n == 2){return 2;}return f(n-1)+f(n-2);}

快速排序

思维很简单,类似二分查找利用for循环逼近中间值,但实际计算时比较复杂

二分查找
 public static void main(String[] args) {Scanner scan = new Scanner(System.in);int arr[] = {1,5,9,45,88,102,555};int max = arr.length-1;int min = 0;int mid = (max+min)/2;int num = scan.nextInt();while (num !=arr[mid]){if (num > arr[mid]){min = mid+1;mid = (max+min)/2;}else if(num < arr[mid]){max = mid -1;mid = (max+min)/2;}if (min > max){break;}}if (min <= max){System.out.println("找到了"+arr[mid]);}else {System.out.println(-1);}}
public class QuickSort {public static void main(String[] args) {int[] arr = {6,3,12,2,15,19,7,3,1};quickSort(arr.length-1,0,arr);System.out.println(Arrays.toString(arr));}public static void quickSort(int right,int left,int arr[]){if ( left > right ){return;}int j = right;int i = left;int base =arr[left] ; //定义一个基准数while(i != j){//在左表与右标遍历完整个数组时跳出循环while (arr[j] >= base && i < j){//在右侧找一个小于基准的数,然后跳出循环   得到jj--;//往左遍历}while (arr[i] <= base && j > i){//在左侧直到找到一个大于基准的数,然后跳出循环 得到ii++;//往右遍历}//交换对应值int temp = arr[i];arr[i]  = arr[j];arr[j]  = temp;}//交换基准值  交换 ij相遇值和基准值所在位置
//        int temp1 = arr[i];
//        arr[i]   =  base;
//        base   = temp1;arr[left] = arr[i]; //把相遇位置上的元素赋值给 原来基准数所在位置arr[i] = base; // 把基准数赋值给相遇位置quickSort(i-1,left,arr);//递归左半边quickSort(right,j+1,arr);//递归左半边

二维数组for循环打印杨辉三角

 打印杨辉三角类似 打印  直角三角形  菱形  99乘法表  

  public static void main(String[] args) {Scanner scan = new Scanner(System.in);System.out.println("请输入行数:");int row = scan.nextInt();//定义一个二维数组用于存储杨辉三角int[][] arr = new int[row][];//向二维数组中填充值for (int i = 0; i < arr.length; i++) {//获取到杨辉三角的每一行//因为每一行都是null,需要赋值arr[i] = new int[i + 1];//遍历arr[i]填充元素for (int j = 0; j < arr[i].length; j++) {if(j==0 || j==i){arr[i][j] =1;}else{arr[i][j] = arr[i-1][j-1] + arr[i-1][j];}//System.out.print(arr[i][j] +"\t");}// System.out.println();}//打印杨辉三角for (int i = 0; i < arr.length; i++) {//打印空格for (int j = 0; j < arr.length-i-1; j++) {System.out.print("  "); //2个空格}//打印杨辉三角for (int j = 0; j <=i; j++) {System.out.print(arr[i][j]+"   "); //3个空格}System.out.println();}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/29423.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【从零单排Golang】第十三话:使用WaitGroup等待多路并行的异步任务

在后端开发当中&#xff0c;经常会遇到这样的场景&#xff1a;请求给了批量的输入&#xff0c;对于每一个输入&#xff0c;我们都要给外部发请求等待返回&#xff0c;然后才能继续其它自己的业务逻辑。在这样的case下&#xff0c;如果每一个输入串行处理的话&#xff0c;那么很…

C语言进阶-4

1、常用位操作符 1.1、位与& (1)注意&#xff1a;位与符号是一个&&#xff0c;两个&&是逻辑与。 (2)真值表&#xff1a;1&00 1&11 0&00 0&10 (3)从真值表可以看出&#xff1a;位与操作的特点是&#xff0c;只有1和1位于结果为1&…

Zookeeper 面试题

一、ZooKeeper 基础题 1.1、Zookeeper 的典型应用场景 Zookeeper 是一个典型的发布/订阅模式的分布式数据管理与协调框架&#xff0c;开发人员可以使用它来进行分布式数据的发布和订阅。 通过对 Zookeeper 中丰富的数据节点进行交叉使用&#xff0c;配合 Watcher 事件通知机…

【java】【maven】【高级】MAVEN聚合继承属性等

目录 1、模块开发与设计 2、聚合 2、继承 3、属性 4、版本管理 5、资源配置 6、多环境配置 7、多环境开发配置 8、跳过测试 9、私服 前言&#xff1a;maven的高级使用包含分模块开发与设计、聚合、继承、属性、版本管理、资源配置、多环境配置、多环境开发配置、跳过…

Github 80 个键盘快捷键和一些搜索技巧的备忘清单

文章目录 键盘快捷键站点范围的快捷方式资料库源代码编辑源码浏览注释问题和拉取请求列表问题和拉取请求拉取请求的变化项目板通知网络图搜索技巧范围搜索文件路径完全符合布尔运算符基于仓库的条件基于 issue 的条件基于用户的条件参考网址键盘快捷键 站点范围的快捷方式 S …

Spring Cloud 的版本和SpringBoot的版本

Spring Cloud 的版本选择 Spring Cloud 和SpringBoot的版本存在对应关系 Spring Cloud 的版本和SpringBoot的版本&#xff0c;存在对应关系。最新的SpringCloud版本&#xff08;发布文章时为2022.0.3&#xff09;&#xff0c;需要SpringBoot&#xff08;3.0.9&#xff09; 的…

数据分析DAY1

数据分析 引言 这一周&#xff1a;学习了python的numpy和matplotlib以及在飞桨paddle上面做了几个小项目 发现numpy和matplotlib里面有很多api&#xff0c;要全部记住是不可能的&#xff0c;也是不可能全部学完的&#xff0c;所以我们要知道并且熟悉一些常用的api&#xff0…

IDEA常用插件介绍

1.CodeGlance&#xff08;CodeGlance Pro&#xff09; 安装后&#xff0c;重新启动编译器即可。 CodeGlance是一款非常好用的代码地图插件&#xff0c;可以在代码编辑区的右侧生成一个竖向可拖动的代码缩略区&#xff0c;可以快速定位代码的同时&#xff0c;并且提供放大镜功能…

Flutter:文件读取—— video_player、chewie、image_picker、file_picker

前言 简单学习一下几个比较好用的文件读取库 video_player 简介 用于视频播放 官方文档 https://pub-web.flutter-io.cn/packages/video_player 安装 flutter pub add video_player加载网络视频 class _MyHomePageState extends State<MyHomePage> {// 控制器late…

centos8.5本地yum源报错

在下载文件出现以下错误 [rootserver ~]# yum install gcc Updating Subscription Management repositories. Unable to read consumer identity This system is not registered with an entitlement server. You can use subscription-manager to register. RHEL8.5-BaseOS …

rust实践-异步并发socket通信

客户端 [package] name "rust_client" version "0.1.0" edition "2021"[dependencies] tokio { version "1.14.0", features ["full"] }use tokio::io::{self, AsyncReadExt, AsyncWriteExt}; use tokio::net::TcpSt…

典型移动APP安全风险提醒

研究背景 随着互联网和移动设备的发展&#xff0c;手机已成为人人都拥有的设备&#xff0c;各式各样的App更是丰富了人们的生活&#xff1a;从社交到出行、从网购到外卖&#xff0c;从办公到娱乐等&#xff0c;App已成为大众生活必需品。然而&#xff0c;App的流行使人们对App…

rust基础

这是笔者学习rust的学习笔记&#xff08;如有谬误&#xff0c;请君轻喷&#xff09; 参考视频&#xff1a; https://www.bilibili.com/video/BV1hp4y1k7SV参考书籍&#xff1a;rust程序设计语言&#xff1a;https://rust.bootcss.com/title-page.htmlmarkdown地址&#xff1a;h…

Blazor前后端框架Known-V1.2.11

V1.2.11 Known是基于C#和Blazor开发的前后端分离快速开发框架&#xff0c;开箱即用&#xff0c;跨平台&#xff0c;一处代码&#xff0c;多处运行。 Gitee&#xff1a; https://gitee.com/known/KnownGithub&#xff1a;https://github.com/known/Known 概述 基于C#和Blazo…

跨境电商中的安全挑战与隐擎Fox指纹浏览器的应用

随着全球互联网的蓬勃发展&#xff0c;跨境电商已经成为了国际贸易的重要组成部分。然而&#xff0c;跨境电商的迅速崛起也伴随着一系列安全挑战&#xff0c;其中之一就是恶意活动和隐私泄露。为了应对这些挑战&#xff0c;诸多技术手段被开发出来&#xff0c;其中隐擎Fox指纹浏…

@RequestBody注解,自定义注解

public Result update(RequestBody EmployeeDTO employeeDTO){&#xff0c;为什么要加RequestBody &#xff0c;什么时候加什么时候不加&#xff1f; 在这段代码中&#xff0c;RequestBody EmployeeDTO employeeDTO 表示将请求体中的数据解析为 EmployeeDTO 对象&#xff0c;并…

springboot启动忽略某些类

springboot启动忽略某些类 描述解决方案单拉一个提交&#xff0c;把所有的涉及kafka消费的都不注入容器通过配置ComponentScan的excludeFilters配置了不生效后续处理改之前改之后解释 总结 拆分环境 感触解决实现demo参考 描述 目前我这的开发环境和测试环境数据库是两份&#…

opencv基础-33 图像平滑处理-中值滤波cv2.medianBlur()

中值滤波是一种常见的图像处理滤波技术&#xff0c;用于去除图像中的噪声。它的原理是用一个滑动窗口&#xff08;也称为卷积核&#xff09;在图像上移动&#xff0c;对窗口中的像素值进行排序&#xff0c;然后用窗口中像素值的中值来替换中心像素的值。这样&#xff0c;中值滤…

【算法|数组】双指针

算法|数组——双指针 引入 给你一个按 非递减顺序 排序的整数数组 nums&#xff0c;返回 每个数字的平方 组成的新数组&#xff0c;要求也按 非递减顺序 排序。 示例 1&#xff1a; 输入&#xff1a;nums [-4,-1,0,3,10] 输出&#xff1a;[0,1,9,16,100] 解释&#xff1a;…

docker安装kafka

docker安装kafka 1.首先&#xff0c;下载Kafka和Zookeeper的Docker镜像&#xff0c; docker pull wurstmeister/kafka docker pull wurstmeister/zookeeper2.启动Zookeeper容器&#xff1a; docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper3.启动Ka…