diff --git a/9 Algorithms Job Interview/3 堆和栈.md b/9 Algorithms Job Interview/3 堆和栈.md index b26f180..35f5638 100644 --- a/9 Algorithms Job Interview/3 堆和栈.md +++ b/9 Algorithms Job Interview/3 堆和栈.md @@ -93,9 +93,7 @@ a < f(top),把 a push 到 辅助栈中 比如输入的push序列是[1、2、3、4、5] ,那么[4、5、3、2、1]就有可能是一个pop序列 因为可以有如下的push和pop序列: -【push 1,push 2,push 3,push 4,pop,push 5,pop,pop,pop,pop】 - -这样得到的pop序列就是【4、5、3、2、1】。 +【push 1,push 2,push 3,push 4,pop,push 5,pop,pop,pop,pop】, 这样得到的pop序列就是【4、5、3、2、1】。 但序列【4、3、5、1、2】就不可能是push序列【1、2、3、4、5】的pop序列。 diff --git a/9 Algorithms Job Interview/5 数组数列问题.md b/9 Algorithms Job Interview/5 数组数列问题.md index a674848..a95ab66 100644 --- a/9 Algorithms Job Interview/5 数组数列问题.md +++ b/9 Algorithms Job Interview/5 数组数列问题.md @@ -644,40 +644,6 @@ f(n)= 1 n=1 ////////////// 数列 /////////////// -输入a1,a2,...,an,b1,b2,...,bn, -在O(n)的时间,O(1)的空间将这个序列顺序改为a1,b1,a2,b2,a3,b3,...,an,bn, -且不需要移动,通过交换完成,只需一个交换空间。 - -例如,N=9时,第2步执行后,实际上中间位置的两边对称的4个元素基本配对, -只需交换中间的两个元素即可,如下表所示。颜色表示每次要交换的元素,左边向右交换,右边向左交换。 -交换过程如下表所示 -交换x1,x3;交换x2,x4;再交换中间的x1,x4;交换y1,y2。 - - - - -给你10分钟时间,根据上排给出十个数,在其下排填出对应的十个数 -要求下排每个数都是先前上排那十个数在下排出现的次数。 -上排的十个数如下: - -【0,1,2,3,4,5,6,7,8,9】 - -初看此题,貌似很难,10分钟过去了,可能有的人,题目都还没看懂。 - -举一个例子, -数值: 0,1,2,3,4,5,6,7,8,9 -分配: 6,2,1,0,0,0,1,0,0,0 -0在下排出现了6次,1在下排出现了2次, -2在下排出现了1次,3在下排出现了0次.... -以此类推.. - -0xX0+1xX1+2xX2....+9xX9 = 10; -X0+X1+...+ = 10; - -转换成多元一次方程求通解的问题。(Matlib) - - - 给出两个集合A和B,其中集合A={name}, 集合B={age、sex、scholarship、address、...}, diff --git a/9 Algorithms Job Interview/6 矩阵.md b/9 Algorithms Job Interview/6 矩阵.md index 826c0a5..9b4ed06 100644 --- a/9 Algorithms Job Interview/6 矩阵.md +++ b/9 Algorithms Job Interview/6 矩阵.md @@ -7,10 +7,21 @@ 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 + ``` -int exist_inmatrix(int *matrix,int rows,int cols,int num); +1 3 5 7 +2 5 7 12 +4 6 9 23 +6 9 23 75 ``` + +``` +int exist_inmatrix(int *matrix,int rows,int cols,int target); +``` + + + ## 矩阵中最大的二维矩阵 求一个矩阵中最大的二维矩阵(元素和最大).如: @@ -25,7 +36,10 @@ int exist_inmatrix(int *matrix,int rows,int cols,int num); 5 3 ``` -要求:(1)写出算法;(2)分析时间复杂度;(3)用C写出关键代码 +要求: +(1)写出算法; +(2)分析时间复杂度; +(3)用C写出关键代码 ``` int max_sum_submatrix(int *matrix,int rows,int cols,int *tmatrix,int *trows,int tcols) @@ -125,7 +139,7 @@ void printArry(int *a,int rows,int columns) int* pArr1=new int[rows];//共存有这么多行指针 for(int i=0;i #include - #define PrintInt(expr) printf("%s : %d\n",#expr,(expr)) + +#define PrintInt(expr) printf("%s : %d\n",#expr,(expr)) + int main() { int y = 100; diff --git a/9 Algorithms Job Interview/测试代码/Power.c b/9 Algorithms Job Interview/测试代码/4 numer/Power.c similarity index 100% rename from 9 Algorithms Job Interview/测试代码/Power.c rename to 9 Algorithms Job Interview/测试代码/4 numer/Power.c diff --git a/9 Algorithms Job Interview/测试代码/3.c b/9 Algorithms Job Interview/测试代码/4 numer/integer_to_bin.c similarity index 100% rename from 9 Algorithms Job Interview/测试代码/3.c rename to 9 Algorithms Job Interview/测试代码/4 numer/integer_to_bin.c diff --git a/9 Algorithms Job Interview/测试代码/9.c b/9 Algorithms Job Interview/测试代码/4 numer/isSquare.c similarity index 100% rename from 9 Algorithms Job Interview/测试代码/9.c rename to 9 Algorithms Job Interview/测试代码/4 numer/isSquare.c diff --git a/9 Algorithms Job Interview/测试代码/one_appear_count_by_binary.c b/9 Algorithms Job Interview/测试代码/4 numer/one_appear_count_by_binary.c similarity index 100% rename from 9 Algorithms Job Interview/测试代码/one_appear_count_by_binary.c rename to 9 Algorithms Job Interview/测试代码/4 numer/one_appear_count_by_binary.c diff --git a/9 Algorithms Job Interview/测试代码/1.c b/9 Algorithms Job Interview/测试代码/4 numer/string_to_integer.c similarity index 100% rename from 9 Algorithms Job Interview/测试代码/1.c rename to 9 Algorithms Job Interview/测试代码/4 numer/string_to_integer.c diff --git a/9 Algorithms Job Interview/测试代码/delete_occurence_character.c b/9 Algorithms Job Interview/测试代码/5 array/delete_occurence_character.c similarity index 100% rename from 9 Algorithms Job Interview/测试代码/delete_occurence_character.c rename to 9 Algorithms Job Interview/测试代码/5 array/delete_occurence_character.c diff --git a/9 Algorithms Job Interview/测试代码/2.c b/9 Algorithms Job Interview/测试代码/5 array/factorial.c similarity index 100% rename from 9 Algorithms Job Interview/测试代码/2.c rename to 9 Algorithms Job Interview/测试代码/5 array/factorial.c diff --git a/9 Algorithms Job Interview/测试代码/fibonacci.c b/9 Algorithms Job Interview/测试代码/5 array/fibonacci.c similarity index 100% rename from 9 Algorithms Job Interview/测试代码/fibonacci.c rename to 9 Algorithms Job Interview/测试代码/5 array/fibonacci.c diff --git a/9 Algorithms Job Interview/测试代码/longest_continuious_number.c b/9 Algorithms Job Interview/测试代码/5 array/longest_continuious_number.c similarity index 100% rename from 9 Algorithms Job Interview/测试代码/longest_continuious_number.c rename to 9 Algorithms Job Interview/测试代码/5 array/longest_continuious_number.c diff --git a/9 Algorithms Job Interview/测试代码/11.c b/9 Algorithms Job Interview/测试代码/5 array/print_continuous_sequence_sum.c similarity index 94% rename from 9 Algorithms Job Interview/测试代码/11.c rename to 9 Algorithms Job Interview/测试代码/5 array/print_continuous_sequence_sum.c index ee5ac8b..b6667a2 100644 --- a/9 Algorithms Job Interview/测试代码/11.c +++ b/9 Algorithms Job Interview/测试代码/5 array/print_continuous_sequence_sum.c @@ -2,6 +2,7 @@ #include "stdio.h" +//打印和为n的2个值 void print_continuous_sequence_sum(int n){// n=1,2 int small=1; diff --git a/9 Algorithms Job Interview/测试代码/print_matrix.c b/9 Algorithms Job Interview/测试代码/6 matrix/print_matrix.c similarity index 100% rename from 9 Algorithms Job Interview/测试代码/print_matrix.c rename to 9 Algorithms Job Interview/测试代码/6 matrix/print_matrix.c diff --git a/9 Algorithms Job Interview/测试代码/6.c b/9 Algorithms Job Interview/测试代码/7 bianrytree/binary_search.c similarity index 100% rename from 9 Algorithms Job Interview/测试代码/6.c rename to 9 Algorithms Job Interview/测试代码/7 bianrytree/binary_search.c