zoukankan      html  css  js  c++  java
  • 滴滴面试(09-20)

    第一轮算法题:每隔N个节点反转单链表
    void reverse(ListNode* pHead, int n){
        if(pHead == nullptr)
            return ;
        // 先求出链表总长度
        int len = 0;
        ListNode* pNode = pHead;
        while(pNode != nullptr){
            pNode = pNode->next;
            len++;
        }
        // 分段反转
        int before = len / n;
        int after = len % n;
        vector<int> ans;
        for(int i = 1; i <= before; i++){
            for(int j = 1; j <= n; j++){
            	ans.push_back(pNode->val);
            	pNode = pNode->next;    
            }
            for(int j = ans.size() - 1; j >= 0; j--)
                printf("%d", ans[j]);
            ans.clear();
        }
        if(after > 0){
            for(int i = 1; i <= after; i++){
                ans.push_back(pNode->val);
                pNode = pNode->next;
            }
            for(int i = ans.size() - 1; i >= 0; i--)
                printf("%d", ans[i]);
        }
    }
    
    第二轮算法题:顺时针90°旋转数组(没做出来,但这个题太印象了,大家得背下来)
    int main()
    {
        int rows = 4;
        int cols = 4;
    	int a[rows][cols]={{1,2,3,4},{2,3,4,5},{3,4,5,6},{4,5,6,7}};
    	int b[rows][cols];
    	for(int i = 0; i < rows; i++)
    	{
    		for(int j = 0; j < cols; j++)
    		{
    			//b[i][j]=a[rows - 1 - j][i];  //顺时针旋转90度,核心算法
    			b[i][j] = a[rows - 1- i][rows - 1- j]; //顺时针旋转180度,核心算法
    			//b[i][j]=a[j][rows - 1-i];   //顺时针旋转270度,核心算法
    		}
    	}
    
        for(int i = 0; i < rows; i++)
    	{
    		for(int j = 0 ; j < cols; j++)
    		{
    			printf("%d", a[i][j]);
    		}
    		printf("
    ");
    	}
    
    	printf("
    ");
    	for(int i = 0; i < rows; i++)
    	{
    		for(int j = 0 ; j < cols; j++)
    		{
    			printf("%d",b[i][j]);
    		}
    		printf("
    ");
    	}
    	return 0;
    }
    

    第一轮面试是一个帅气的小哥哥,问的问题都还挺简单,算法题也比较容易

    第二轮面试官一看就是一个大佬,指着我的项目问,一直问我的Linux任务是怎么调度的,是怎么去判断我的任务有没有被出触发的,然后一直问我的Redis优化,项目优化,我勒个去。。。这种题我就没资格答......可能觉得我太菜了,最后给我出了个简单的算法题,但是我简单的算法题也没做出来哈哈哈哈哈~

    果不其然,面试结束后10分钟就收到了滴滴的感谢信~

  • 相关阅读:
    A05. openstack架构实战-nova服务控制节点安装
    A04. openstack架构实战-glance服务安装
    A03. openstack架构实战-keystone安装
    SSH暴力破解的解读与防御
    tcpdump抓包命令使用
    Superspeed.sh 一键测试服务器到中国上传/下载速度
    Windows ping TCP端口工具之tcping
    实验验证centos 7 系统不会缓存dns信息
    Linux下的TCP测试工具——TCPING安装简明教程
    Debian 9.12 live系统密码重置
  • 原文地址:https://www.cnblogs.com/flyingrun/p/13701123.html
Copyright © 2011-2022 走看看