当前位置: 首页 > wzjs >正文

网站备案方案合肥网站优化

网站备案方案,合肥网站优化,普陀区网站建设,电商网站建设赏析文章目录 阿里巴巴找黄金宝箱4 阿里巴巴找黄金宝箱4 有1~N个箱子排成一个环,每个箱子有自己对应的编号;输出每一个箱子后第一个比自己编号大的数;找到的多个数以,分隔输出; 示例1: 输入: 2,5,…

文章目录

  • 阿里巴巴找黄金宝箱4

阿里巴巴找黄金宝箱4

  • 有1~N个箱子排成一个环,每个箱子有自己对应的编号;
  • 输出每一个箱子后第一个比自己编号大的数;
  • 找到的多个数以,分隔输出;

示例1:
输入:
2,5,2
输出
5,-1,5

示例2:
输入:
3,4,5,6,3
输出
4,5,6,-1,4

思路:

  • 数组复制一份,拼接在一起(每个数找一圈);
  • 单调栈,从栈顶到栈底,递增为单调递增栈;否则为单调递减栈;
  • 单调栈解决大小关系;

python实现:


arr = list(map(int, input().strip().split(",")))
n = len(arr)# 存储找到的第一个比自己大的数
arr2 = [-1 for i in range(n)]# 单调栈,存储当前的索引
stack = []
# 双份数组 或者 圆圈索引求模
double_arr = arr + arrfor i in range(2*n):cur_data = double_arr[i]while stack and cur_data > arr[stack[-1]]:# 找到当前比idx处大的第一个数cur_idx = stack.pop()arr2[cur_idx] = cur_data# 有效索引入栈 (>=n的索引无效)if i < n:# 索引入栈stack.append(i)arr2_str = map(str, arr2)
print(",".join(arr2_str))

java

import java.util.Scanner;
import java.util.*;
import java.lang.Integer;public class Main{public static void main(String[] args) {Scanner sc = new Scanner(System.in);int[] nums = Arrays.stream(sc.nextLine().split(",")).mapToInt(Integer::parseInt).toArray();int len = nums.length;//将数组复制成双份数组([1,2,3] -> [1,2,3,1,2,3])int[] doubleNums = Arrays.copyOf( nums, len *2);System.arraycopy( nums, 0, doubleNums, len, len);//各位置对应第一个比他大的数int[] resInts = new int[len];//初始化为 -100001,因为宝箱数值范围 >= -100000,<=100000Arrays.fill( resInts, -100001);Deque<Integer> deque = new ArrayDeque<>();for(int i=0; i<len*2; i++){int num = doubleNums[i];System.out.println("55--" + num);//单调栈while (!deque.isEmpty() && num > nums[deque.peek()]){ // deque.peek() 访问栈顶//双向队列中有值,且最后一个值小于当前数字则取出//并通过队列中的索引,对 resInts 进行赋值System.out.println("出队" + num);int index = deque.pop(); // 弹出栈顶resInts[index] = num;}if(i < len){System.out.println("入队" + i);deque.push(i);}}String res = "";for(int i : resInts){if(i == -100001){//等于 -100001 说明不存在,则输出 -1i = -1;}res += i + ",";}System.out.println(res.substring( 0, res.length() - 1));}}

&nbsp;

http://www.dtcms.com/wzjs/527077.html

相关文章:

  • 公司网站改版建议地推放单平台
  • 建设电影网站怎么上传电影汕头网站推广
  • 中国人在线播放seo 工具分析
  • 海口制作网站关键词挖掘工具有哪些
  • 网站制作一条龙网络公司推广方案
  • 一流的网站建设公司推广排名seo
  • 人才招聘网站建设方案找培训班一般在什么平台
  • 珠海市住房建设局网站简述优化搜索引擎的方法
  • 旅行社门店做网站嘛谈谈对seo的理解
  • 学做网页的网站怎么找需要做推广的公司
  • 网站的网页建设知识ppt模板浏览器下载安装2022最新版
  • 360网站怎么做链接百度指数官网
  • 做门户论坛与网站的区别外链生成工具
  • 怎么做好推广和营销为什么seo工资不高
  • 学习网站的设置和网页的发布北京网站建设东轩seo
  • 深圳建网站兴田德润专业网络推广外包联系方式
  • 网站做优化的成本竞价托管多少钱一个月
  • 怀化网站优化联系方式厦门人才网唯一官网
  • 商丘企业网站建设推荐广州网络营销推广
  • 有没有直接做网站的软件百度推广需要什么条件
  • 北京网站建设价格低网络营销师主要做什么
  • 设计企业品牌logo靠谱的seo收费
  • c 教学网站开发哪些网站是营销型网站
  • 网站模板设计开发搜索引擎推广案例
  • 国外网页素材网站网站推广的工作内容
  • 现在由哪些网站可以做外链淘宝seo具体优化方法
  • 网站开发验收模板友情链接的定义
  • 佛山优秀网站建设品牌推广案例
  • 企业网站建设规划设计任务书东莞寮步最新通知
  • 网站子域名怎么做互联网营销培训课程