摘要:下面代码可实现3D立方体,比较好理解,就是让每个面先平移到指定位置,然后旋转90度 但是缺点是 如果我们旋转每个面面对自己的时候,里面的数字可能并不是正序的,如图: 这里的5就是反的,为了解决这个问题,我们需要做的是 针对 上,后,下,前 四个面进行先旋转在平移的处理,就可以保证转向我们的面始终是正
阅读全文
摘要:概念: 桶排序(Bucket sort)或所谓的箱排序,是一个排序算法,工作的原理是将数组分到有限数量的桶里。每个桶再个别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排序),最后依次把各个桶中的记录列出来记得到有序序列。桶排序是鸽巢排序的一种归纳结果。当要被排序的数组内的数值是均匀
阅读全文
摘要:我们在算递归算法的时间复杂度时,Master定理为我们提供了很强大的便利! Master公式在我们的面试编程算法中除了BFPRT算法的复杂度计算不了之外,其他都可以准确计算! 这里用求数组最大值的递归函数来举例: master公式:也叫主定理。它提供了一种通过渐近符号表示递推关系式的方法。 应用Ma
阅读全文
摘要:通过左神学到了一个非常有用的东西-对数器具对数器是用来测试代码正确性的,我们在找不到合适的oj系统测试自己的代码时,可以自己写一个对数器对代码进行测试 设计对数器的一般步骤为:1.有一个你要测的方法a; 2.实现一个绝对正确即使复杂度不好的方法b; 3.实现一个随机样本产生器; 4.实现比对的方法;
阅读全文
摘要:数组中重复的数字 二维数组中查找 字符串 替换空格 二叉树的编码和解码 从尾到头打印链表 重建二叉树 二叉树的下一个节点 2个栈实现队列 斐波那契数列 旋转数字 矩阵中的路径 机器人的运动范围 剪绳子 二进制表示中1的个数 数值的整数次方 打印1到最大的n位数 在O(1)时间删除链表结点 删除链表中
阅读全文