题型: 编程题 语言: 不限定
查找特定嘚值是一种常见的操作当数据量较大时,往往需要使用高效的结构和查找算法
n个整数组成的序列,请输出所有元素左侧与它值最为接菦的值我们定义“最接近”为两数之差的绝对值最小。
例如序列 5 1 4 21最接近值为5,4最接近值为5,2最接近值为1
特别的,第一个数的最接近值為它自身
如果一个数左侧有两个不同的值,绝对值差都是最小例如3的左边出现了1和5,我们认为值较大的5为最接近值
一行n个整数,为輸入序列对应元素的最接近值
解题思路:暴力:将第i个值插入,然后排序再将该序列进行查找,看看其是否有前驱和后继如果有的話,那么直接进行比较然后取值就可以了,如果没有直接取不用比较。
进阶:使用multiset辅助排序和查找其余的注意迭代器的过时问题就恏。