机考考的还行,算是发挥了本小白的水平了。
有一点很气,那道拓扑的应该很快就能过的,做其他题去了,没有看这道,后来剩下5分钟过的时候,猛赶也没写完。
嗨呀。
稍微总结一下过的和没过的题。
其他4道的话,总结如下:
1.看到的时候,没有那种特别的思路,就是想着最完整的遍历找。不造有没有别的算法。
但是很坑,调用了math的abs函数,编译器就是不过
莫名其妙花了半个多小时,并且把我弄的很慌
而且看到别人一大堆的过来着
tip:早饭不要吃太辣
总而言之 这个时候开始腹痛了
2.当时第一题让我蛮难受的,感觉就是,想着,万一一题都A不了,那就炸了
这个时候开始,努力让自己正经。
掏出了本子,开始对着题目想算法。
因为有模拟题的缘故,所以这题还蛮熟悉的
而且整个模拟题基本没有参考别人的思路和代码,所以
几分钟后灵光一现
想到一个贪心算法排序之类的
感觉这个算法,应该是最优解之一了
然后打了一遍
发现这回,vs版本太低
模拟题的时候的sort(less<int>())
记得很清楚,vs识别不了
然后 我当时直接就用soj来上传改了
蜜汁自信
然后编译通不过
没想到 西西里那个
bug这么多
第一个j--没问题
第二个j--改写成j=j-1就ok了
无语..
然后再改之前的一个细节错误
总而言之
运气比较好,直接改出了ac
没有本地测试来着
很舒服,感觉救赎了
不过时间也花的挺多
第三题是
二叉树的融合
这个涉及到一些链表操作
是介乎熟的内容
但是并不擅长
这题看了看,对着本子写了一会思路
发现没有什么头绪
就跳过去
第四题
是01矩阵,找最近0的算法
呃
想了很多
但是想着,怕是会超时哟
也没有想到算法,这题算是很有意思的题目了
因为之前模拟的时候,一直超时来着,没有想到算法也就没有试了
然后看第五题
拓扑排序....瞄了一眼
看起来很复杂后面的动态规划比较熟
这题过的人也不多
跳了
第六题
来到了动态规划
与之前的还是有些不同的
这个在上课的时候
还是比较认真的看ppt还有操练
然后思路一开始没有清楚
主要当时脑子也热了
晕晕乎乎
凭着动态规划的感觉
晃晃悠悠的过了
到这里的时候
a了三题
第七题
最长公共子串
当时凭着记忆想的是KMP
然后想到自己KMP根本没有记住
另外的方法应该会超时
然后就没有管了
其实后来想想
好像...我记错了
第八题
好了 承认没有戳进去看
然后还有点时间
想了想
最多的是那个二叉树的
然后就开始继续之前的思路
我感觉好复杂哟
当时对于是否能过,非常的怀疑
我觉得我的想法 也许不是最优解
不过还是拼了拼,不知道效率怎么样:
而且路上万一很多坑,编译器编辑器......二叉树不好测试.....
思路:从一棵树为标准
层次遍历 两个头结点入栈
两个都有的 入队列,然后提取出来 融合值 改到第一颗中
第一颗有第二颗没有的 不用管了,继续保留 因为返回的是第一颗
第一颗没有的,调用函数,传入第二颗的此方向节点 然后输出为此节点的全部子树
函数命名为cpy 意思是把这一块copy出来
再接到第一颗上
最后输出
成功ac,这一题很满意,因为各种担心节点处理代码错误之类的,指针空了之类的,逻辑万一有一些失误,debug感觉遥而无期
最后还剩下二十来分钟
当时选择去做了“kmp”
想试试是不是超时
发现不太对劲,跟我的想法不一样
我记错了
后来再看了看拓扑那题
哇
我会做
而且
贼简单
记录成功后
一个入度为0的点深度遍历
知道所有点都ok就好了
好气啊
本来能过5题的
这个就是后来的一些想法了
结果还是比较满意的
如果之前功课与水平再高一点
就能有机会6题吧
综上
算是发挥了水平
可是
差距明显
还有非常常德路要走呢。