#include <bits/stdc++.h>
using namespace std;void MaxMin(int a[], int l, int r, int &maxe, int &mine){int mid;if(l == r){  //只有一个元素maxe = a[l];mine = a[l]; }else if(l == r -1){  //只有两个元素maxe = max(a[l], a[r]); mine = min(a[l], a[r]);} else{  //有两个以上元素mid = (l + r) / 2;int lmaxe, lmine;MaxMin(a, l, mid, lmaxe, lmine);int rmaxe, rmine;MaxMin(a, mid + 1, r, rmaxe, rmine);maxe = max(lmaxe, rmaxe);mine = min(lmine, rmine); }
}int main(){int a[] = {4, 3, 1, 2, 5};int n = sizeof(a) / sizeof(a[0]);int maxe, mine;MaxMin(a, 0, n -1, maxe, mine);cout << "最大值为:" << maxe << endl;cout << "最小值为:" << mine << endl; return 0;
}

3.7-10设计一个算法,采用分治法求一个整数序列中的最大最小元素相关推荐

  1. 采用分治法求一个整数序列中的最大值和最小值

    #include <iostream> using namespace std; void MaxMin(int a[], int l, int r, int &maxe, int ...

  2. 分治法求一个N个元素数组的逆序数

    背景  逆序数:也就是说,对于n个不同的元素,先规定各元素之间有一个标准次序(例如n个 不同的自然数,可规定从小到大为标准次序),于是在这n个元素的任一排列中,当某两个元素的先后次序与标准次序不同时, ...

  3. python矩阵乘法分治算法_矩阵乘法的Strassen算法详解 --(算法导论分治法求矩阵)...

    1 题目描述 2 思路分析 3 解法 4 小结 1 题目描述 请编程实现矩阵乘法,并考虑当矩阵规模较大时的优化方法. 2 思路分析 根据wikipedia上的介绍:两个矩阵的乘法仅当第一个矩阵B的列数 ...

  4. 算法分析课设(四)采用分治法求树中任意两点之间距离小于K的点对及路径

    免责声明 本文仅为个人学习笔记,请谨慎参考,如有错误欢迎批评指正. 参考文章 第一篇文章主要看树的重心的部分 第二篇文章才是和本题完全一致 https://blog.csdn.net/a_foreve ...

  5. c语言分治法求众数重数_分治法求众数 - osc_twlari2q的个人空间 - OSCHINA - 中文开源技术交流社区...

    分治法求众数 Problem Description 给定含有n个元素的多重集合S,每个元素在S中出现的次数称为该元素的重数.多重集S中重数最大的元素称为 众数.例如,S={1,2,2,2,3,5}. ...

  6. 算法设计与分析之分治法

    文章目录 前言 一.分治法设计思想 二.分治法与递归 三.分治法的适用条件 四.时间复杂度分析 五.分治法设计步骤 六.分治法示例 总结 前言 大家好,我是一只勤勤恳恳的程序猿.本篇文章小猿将跟您分享 ...

  7. 深大算法设计与分析实验二——分治法求最近点对问题

    源代码: 深大算法设计与分析实验二--分治法求最近点对问题代码-C/C++文档类资源-CSDN下载 目录 实验问题 一.实验目的: 二.内容: 三.算法思想提示 产生不重复的随机点算法: 蛮力算法: ...

  8. 数据结构例16.试设计一个算法, 使得在一个有序的单链表中插入一个元素后仍然有序。

    /* 16.试设计一个算法, 使得在一个有序的单链表中插入一个元素后仍然有序. */ # include <iostream> # include <stdlib.h> # i ...

  9. python分治算法_Python算法:分治法

    本节主要介绍分治法策略,提到了树形问题的平衡性以及基于分治策略的排序算法 本节的标题写全了就是:divide the problem instance, solve subproblems recur ...

  10. 分治法在求解凸包问题中的应用(JAVA)--快包算法

    分治法在求解凸包问题中的应用(JAVA) 之前写过一篇蛮力法在求解凸包问题中的应用(JAVA)还算简单易懂,没有基础的读者最好先去阅读以下. 这里用分治法来求解凸包问题,由于这个算法和快速排序十分相似 ...

最新文章

  1. 文本框字符串长度实时统计jQuery插件,兼容IE6+
  2. python opencv cv2.imdecode()函数(从内存中的缓冲区读取图像)
  3. 使用Java8的Stream对两个 List 遍历匹配数据的优化处理
  4. soc 设计soc设计 uml实务手册_采用 USB4 技术升级 SoC 设计
  5. chrome 插件开发各种功能demo_Chrome 开发者工具各种骚技巧
  6. PHY以太网自动协商原理
  7. inet_pton, inet_ntop
  8. 防止网页被嵌入框架的代码
  9. transactional replication 的immediate_sync属性
  10. atmega328p引脚图_【ATMEGA328P-PU PDF数据手册】_中文资料_引脚图及功能_(爱特美尔 ATMEL)-采芯网...
  11. SU2 CFD代码阅读
  12. 用剥洋葱理解递归逆序输出单链表
  13. 脱离低级趣味- Python ‘\r‘, ‘\n‘, ‘\r\n‘ 的彻底理解
  14. docker 阿里云 ddns
  15. aws亚马逊云购买服务器的操作记录
  16. HTML DOM 导航
  17. python是什么类型需要_python数据类型是什么
  18. 移动终端及常见的操作系统
  19. IAP程序在内测期间的各种问题
  20. 计算机专业建议买苹果笔记本吗,笔记本买win还是买Mac?也许可以参考这些建议...

热门文章

  1. kettle(PDI)安装使用过程,并部署到Linux下执行定时作业
  2. Altium_Protel99SE的使用
  3. python在屏幕上画画,屏幕上的Python绘图
  4. pyqt5转pyqt6需要注意的事项
  5. linux怎么查看vip地址,rac环境vip在linux下的连接信息
  6. 酷开科技 × StarRocks:统一 OLAP 分析引擎,全面打造数字化的 OTT 模式
  7. 计算机组成原理——总线
  8. 小米r1d安装php,小米路由器 一键安装LLM教程
  9. 计算机页面的工具,魔兽窗口化工具
  10. Java常用中间件---SpringBoot整合ActivityMQ