最近一段时间一直在准备实习生招聘,自己总结一个手写算法题的步骤。
(1)理清算法的思路,尽量通过联想以前的算法,画图法,举例子法等。
(2)input
写出算法的输入
(3)output
算法输出什么内容
(4)case test(算法的测试用例)
可以通过三个方面来写 1.特殊输入:比如输入的数是不是无效,输入的数组是不是为NULL。
2.功能测试:这里必须写明特殊的情况,比如链表删除一个节点,是不是删除的是最后一个节点,数组的边界情况。
3.负值测试:不满足题目的情况下,算法能不能作出相应的回馈。
(5)写出算法的代码,注意函数名和参数的命名,然后是对特殊输入的处理。如果有递归的时候,要记得写出递归的出口。
(6)将测试用例带入的算法代码中,检查算法能不能通过测试