求绝对值最小的数

题目

有一个升序排列的数组,数组中可能有正数,负数或0. 求数组中元素的绝对值最小的数.
例如 数组{-10, 05, 02 ,7,15,50} 绝对值最小的是-2

解答

#include <bits/stdc++.h>
using namespace std;void f(int a[], int len) {if (a[len-1] <= 0) {cout << abs(a[len-1]) <<endl;return ;}if (a[0] >= 0) {cout << a[0] << endl;return ;}// 有正有负int l = 0, r = len-1;while (l <= r) {int m = (l + r) / 2;if(a[m] == 0) {cout << a[m] << endl;return ;} else if(a[m] > 0) {if(a[m-1] < 0) {int mn = min(abs(a[m-1]), a[m]);cout<< mn <<endl;return ;} else if (a[m-1] == 0) {cout << 0 <<endl;return ;} else {// a[m-1] > 0r = m-1;}} else {// a[m] < 0if(a[m+1] > 0) {int mn = min(abs(a[m]), a[m+1]);cout << mn <<endl;return ;} else if(a[m+1] == 0) {cout << 0 <<endl;return ;} else {// a[m+1] < 0l = m+1;}}}return ;
}int main()
{int a1[] = {-10, -5, -2, 7, 15 ,50};int a2[] = {2,4,6,8,27};int a3[] = {-13, -9, -7, -3};int l1 = 6, l2 = 5, l3 = 4;f(a1, l1);f(a2, l2);f(a3, l3);return 0;
}

转载于:https://www.cnblogs.com/Draymonder/p/10703605.html

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

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

相关文章

leetcode面试题 04.02. 最小高度树(深度优先搜索)

给定一个有序整数数组&#xff0c;元素各不相同且按升序排列&#xff0c;编写一个算法&#xff0c;创建一棵高度最小的二叉搜索树。 public TreeNode sortedArrayToBST(int[] nums) {if(nums.length0) return null;return BST(nums,0,nums.length-1);}public TreeNode BST(int[…

IT团队如何赢得尊重?

本文讲的是IT团队如何赢得尊重,在传统观念中&#xff0c;作为企业的IT人&#xff0c;似乎都有一种挥之不去的消极情绪&#xff1a;能够为企业带来直接利益的业务部门才是企业核心&#xff0c;而作为技术支撑的IT部门&#xff0c;则是作为附属而存在。 我们经常也会听到一些企业…

mysql 官方镜像_运行官方mysql 镜像

//目前最新的为mysql 8sudo docker run -itd --restart unless-stopped --nethost --name mysql -p3306:3306 -e MYSQL_ROOT_PASSWORDroot mysqlmysql 官方docker 需要重新设置密码&#xff0c;否则无法远程连接step1 : docker exec -it [容器id] /bin/bashstep2 : 登陆mysql &…

我如何使用React,Redux-Saga和Styled Components构建NBA球员资料获取器

by Jonathan Puc乔纳森普克(Jonathan Puc) 我如何使用React&#xff0c;Redux-Saga和Styled Components构建NBA球员资料获取器 (How I built an NBA player profile fetcher with React, Redux-Saga, and Styled Components) Hello, all! It’s been a while since I built so…

vb 数组属性_VB中菜单编辑器的使用讲解及实际应用

大家好&#xff0c;今天我们共同来学习VB中菜单方面的知识。VB中菜单的基本作用有两个&#xff1a;1、提供人机对话的界面&#xff0c;以便让使用者选择应用系统的各种功能&#xff1b;2、管理应用系统&#xff0c;控制各种功能模块的运行。在实际应用中&#xff0c;菜单可分为…

《JAVA程序设计》_第七周学习总结

一、学习内容 1.String类——8,1知识 Java专门提供了用来处理字符序列的String类。String类在java.lang包中&#xff0c;由于java.lang包中的类被默认引入&#xff0c;因此程序可以直接使用String类。需要注意的是Java把String类声明为final类&#xff0c;因此用户不能扩展Stri…

leetcode109. 有序链表转换二叉搜索树(深度优先搜索/快慢指针)

给定一个单链表&#xff0c;其中的元素按升序排序&#xff0c;将其转换为高度平衡的二叉搜索树。 本题中&#xff0c;一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。 解题思路 先将链表转换成数组&#xff0c;再构造二叉搜索树 代码 …

NeHe OpenGL教程 第三十七课:卡通映射

转自【翻译】NeHe OpenGL 教程 前言 声明&#xff0c;此 NeHe OpenGL教程系列文章由51博客yarin翻译&#xff08;2010-08-19&#xff09;&#xff0c;本博客为转载并稍加整理与修改。对NeHe的OpenGL管线教程的编写&#xff0c;以及yarn的翻译整理表示感谢。 NeHe OpenGL第三十七…

SDN交换机在云计算网络中的应用场景

SDN的技术已经发展了好几年了&#xff0c;而云计算的历史更长&#xff0c;两者的结合更是作为SDN的一个杀手级应用在近两年炒得火热&#xff0c;一些知名咨询公司的关于SDN逐年增加的市场份额的论断&#xff0c;也主要是指SDN在云计算网络中的应用。 关于SDN在云计算网络中的应…

sql server 里面怎么支持数字使用双引号_国查:用中文编写SQL

这两天被 文言(wenyan-lang)刷屏了&#xff0c;这个项目在于使用文言文进行编程&#xff0c;我打算蹭个热度&#xff0c;把年初的作品再捞一捞&#xff0c;即中文SQL。1. 文言Wenyan&#xff1a;吾有一數。曰三。名之曰「甲」。為是「甲」遍。吾有一言。曰「「問天地好在。」」…

七日掌握设计配色基础_掌握正确的基础知识:如何设计网站的导航,搜索和首页...

七日掌握设计配色基础by Anant Jain通过Anant Jain 掌握正确的基础知识&#xff1a;如何设计网站的导航&#xff0c;搜索和首页 (Get the basics right: how to design your site’s navigation, search, and homepage) 一个7分钟的指南&#xff0c;使这三个基础组件正确无误。…

python渲染光线_python模板渲染配置文件

python的mako、jinja2模板库&#xff0c;确实好用&#xff01;这里做个笔记&#xff0c;好记性不如烂笔头。#!/usr/bin/env python#encodingutf-8import sys,yaml # 配置文件使用yaml格式from mako.template import Template # 加载mako库的Templat…

leetcode114. 二叉树展开为链表(深度优先搜索)

给定一个二叉树&#xff0c;原地将它展开为一个单链表。例如&#xff0c;给定二叉树1/ \2 5/ \ \ 3 4 6 将其展开为&#xff1a;1\2\3\4\5\6代码 class Solution {public void flatten(TreeNode root) {flat(root);}public TreeNode flat(TreeNode root) {if(rootnull)…

eclipse新建web项目

需要点击File—>New—>Other…在Web文件夹下找到Dynamic Web Project—>Next修改server端口可以在启动项目后访问地址是端口号项目名转载于:https://juejin.im/post/5cb4999df265da037b610545

idea tips

AltInsert 自动出现generate ,,里面有构造方法&#xff0c;getter,setter... CtrlO,重写方法 CtrlI...自动出现接口的方法 转载于:https://www.cnblogs.com/bin-lin/p/6247538.html

革新以太网交换机架构 全光网络的风刮进园区

全光网络的风正在刮进园区网&#xff0c;众所周知&#xff0c;光纤入户发展迅速&#xff0c;随着PON&#xff08;无源光纤网络&#xff09;技术在运营商通信网络的大规模使用&#xff0c;PON相关产业链逐步成熟&#xff0c;这也使得PON技术逐步在企业园区网得到应用。 基于铜线…

mysql loop循环实例_MySql CURSOR+LOOP循环-使用小实例

转载自https://blog.csdn.net/starinbrook/article/details/77078126转载自https://blog.csdn.net/makang456/article/details/53896346/【简介】游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标充当指针的作用。尽管游标能遍历结果中的所有行&am…

react数据从本地读取_如何将从Google表格读取的React应用程序部署到Netlify

react数据从本地读取In this tutorial, we’re going to cover how to connect to a spreadsheet hosted on Google, display that information inside a React application, and deploy it to Netlify.在本教程中&#xff0c;我们将介绍如何连接到Google托管的电子表格&#x…

leetcode743. 网络延迟时间(迪杰斯特拉算法)

有 N 个网络节点&#xff0c;标记为 1 到 N。 给定一个列表 times&#xff0c;表示信号经过有向边的传递时间。 times[i] (u, v, w)&#xff0c;其中 u 是源节点&#xff0c;v 是目标节点&#xff0c; w 是一个信号从源节点传递到目标节点的时间。 现在&#xff0c;我们从某个…

在线python视频教程_【好程序员】2019 Python全套视频教程2

2019千锋好程序员全新Python教程&#xff0c;深入浅出的讲解Python语言的基础语法&#xff0c;注重基本编程能力训练&#xff0c;深入解析面向对象思想&#xff0c;数据类型和变量、运算符、流程控制、函数、面向对象、模块和包、生成器和迭代器。教程列表&#xff1a;千锋Pyth…