面试题准备

第一大类:python

1.json.loads和json.dumps的区别

json.loads将str转换为字典,json.dumps将字典准换为str字符串。

json.loads将json转换为字典,方便python处理。json.dumps将字典转换为json,方便数据存储、阅读与传输。

2.用python计算从1加到50等于多少

sum = 0
for i in range(1,51):
    sum = sum + i
print sum
    

 3.你用python2还是python3?

讲一下range和xrange的区别?

range输出列表,xrange输出迭代器。如果用来做循环的话,尽量用xrange,可以节省内存。如果想得到一个列表,就用range。

4.读取一个文本文件并把内容打印出来

with open('data.txt','r') as f:

    print f.read()

 

第二大类:shell

1.用shell写个脚本计算从1加到50等于多少

res=0
for ((i=1; i<=50; i++))
do
    res=`expr ${res} + ${i}`
done
echo $res
res=0
for i in {1..50}
do
    res=`expr ${res} + ${i}`
done
echo $res
res=0
for i in `seq 1 50`
do
    res=`expr ${res} + ${i}`
done
echo $res

2.打印日志最后一列(以空格分隔)

awk ‘{print $NF}’

 

第三大类:msql

1.查看前10行

select * from data limit 10;

2.查看指定元素值

select key from data where info='test';

3.查看有多少行数据

select cout(*) from data;

 

第四大类:算法

在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).(从0开始计数)

class Solution {
public:
    int FirstNotRepeatingChar(string str) {
        int len = str.length();
        int equal = 0;
        for(int i=0;i<len-1;i++){
           
            for(int j=0;j<len;j++){
                if (str[i] == str[j]){
                    equal++;
                    if(equal>=2){
                        break;
                    }
                    
                }
            }
            if(equal == 1){
                return i;
            }
            equal = 0;
            
        }
        return -1;
    }
};

  

posted on 2020-09-17 00:53  那年月光  阅读(181)  评论(0编辑  收藏  举报