摘要: 题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10. 思路:设置4个标记,分别为上 阅读全文
posted @ 2018-05-26 21:58 Lune-Qiu 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 思路:dp 是斐波那契数列 2*n的大矩形,和n个2*1的小矩形 其中target*2为大矩阵的大小 有以下几种情形: 1、target <= 0 大矩形为<= 阅读全文
posted @ 2018-05-26 21:06 Lune-Qiu 阅读(446) 评论(0) 推荐(0) 编辑
摘要: 题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 思路:从左下角开始遍历,右面的都是比它大的,上面的都是比它小的; 代码: class Solution { public: 阅读全文
posted @ 2018-05-26 20:15 Lune-Qiu 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 一. 冒泡排序 如果数组是有序的,那么这种方法最快 代码: 进行了两次优化,每次将pMark置为0,如果判断后pMark仍然为零,那么没有交换数组元素,说明数组是有序的,则跳出循环。 第二次优化:如果数组是部分有序的,即后面元素是有序的,那么pMark记录有序的第一个元素下标,i减少循环次数,j随i 阅读全文
posted @ 2018-05-26 17:51 Lune-Qiu 阅读(160) 评论(0) 推荐(0) 编辑