讨论/求职面试/面经_字节跳动_实习_国际化业务部/
面经_字节跳动_实习_国际化业务部
  • 最长回文子串
  • 词语的布尔表达式解析--后缀表达式
  • 在这里插入图片描述
  • 数据库缓存双写不一致
  • 数据库索引相关问题
  • hadoop如何上传文件
  • 介绍一下降维的方法,例如PCA之类的方法和MF的方法
  • 使用linux完成如下操作:读取一个文件中的值,按照第三列大小排序,取前1000个,展示第一个的值
  • 使用sql,取两列中数据相同的记录
  • 圆上随机取三点,构成锐角或者钝角的概率
  • 经过移位的有序序列查找值--有判断的二分
#include <iostream>
using namespace std;
const int maxn = 1000;

int list[maxn];
int main() {
    //int a;
    //cin >> a;
    //4 5 6 1 2 3
    //34567812
    //78123456
    int n;
    int target;
    cin >> target;
    cin >> n;
    for(int i=0;i<n;i++){
        cin>>list[i];
    }
    int left = 0;
    int right = n;
    int mid;
    while(left < right){
        mid = (left + right)/2;
        
        if(list[mid] > target){
            if(list[left]<target){
                right = mid;
            }else{
                if(list[right]>list[mid]){
                    right = mid;
                }else{
                    left = mid;
                }
                
            }
        }else{
            if(list[right] < target){
                left = mid;
            }else{
                if(list[right]>list[mid]){
                    left = mid;
                }else{
                    right = mid;
                }
                
            }
        }
    }
    cout << mid << endl;

    
}
13
共 0 个回复
暂无回复