标签:str 不为 循环 int 数字 sum 结构 就是 无语
? 周五大连思科来学校开宣讲会,和室友看完妇联3后时间刚好到笔试时间,就过去看看会有什么题,为下学期找实习做点准备。
? 进教师听了几分钟宣讲后发笔试题啦,当发下来的那一刻,我是蒙逼的,题目全是英文,再一看题型,更是无语凝咽...15道计算机网络的,10道智力题,英译汉、汉译英。还有1道写网页的和3道算法题。
? 我以为选择会考些java基础和数据结构什么的,计算机网络实在是忘的差不多了,题基本上是靠感觉了。智力题也就能做出来俩。
? 写html就不讲了,直接说最后的算法吧。
? 算法是3选2.
第一个 有序数组统计数字个数,最好不要用额外空间
例: {0,0,1,1,2,2,3,3,4}
输出:5
我当时想的是两个指针,i,j,一个计数器sum
如果arr不为空 sum初始为1
当 arr[i]!=arr[j]时 就说明是一个新的数字,sum+1,将i移动到j ,j=j+1
然后从头遍历
习惯性的直接俩循环
for (int i = 0; i <num.length ; i++) {
for (int j = i+1; j < num.length ; j++) {
if (num[i] != num[j]){
sum++;
j=j+1;
i=j-2;
}
}
}
然而我忘了 for里面的j++ ...
正确应该是这样的
for (int i = 0; i <num.length ; i++) {
for (int j = i+1; j < num.length ;) {
if (num[i] != num[j]){
sum++;
j=j+1;
i=j-2;
}
}
}
第二题是 求子字符串的位置 如果不包含子字符串的话 返回-1
KMP算法? 根本不会啊
当然也可以两个for循环像题一那样实现
不过效率很低就是
心态很炸 直接str.indexOf(str2)了..
总结嘛 自己好菜 再菜下去怕是实习没人要了。
标签:str 不为 循环 int 数字 sum 结构 就是 无语
原文地址:https://www.cnblogs.com/hehecat/p/9028432.html