劍指offer 面試題20

2022-08-16 11:36:09 字數 810 閱讀 7027

題目:從外向裡順時針列印矩陣

做題心得:該題本質上並未考查複雜的資料結構及演算法,而是考查了快速找規律的能力!!!

要想作出此題,必須先有絕對清晰的思路,否則越寫越亂(因為涉及到很多的迴圈列印)

自己當時的思路基本符合作者提供的思路:

先考慮怎麼列印一圈(四個迴圈),再考慮如何結束列印(和作者的意圖不太一樣,自己想通過列印數<=rows*columns來決定,作者的思路比較難想!)

但真正去寫還是很困難。。。

#include "

stdafx.h

"void printmatrixincircle(int** numbers, int columns, int rows, int

start);

void printnumber(int

number);

void printmatrixclockwisely(int** numbers, int columns, int

rows)

}void printmatrixincircle(int** numbers, int columns, int rows, int

start)

//從上到下列印一列

if(start }

//從右到左列印一行

if(start < endx && start }

//從下到上列印一列

if(start < endx && start < endy - 1

)

}}void printnumber(int

number)

劍指offer面試題7

面試題7 用兩個棧實現佇列 using namespace std template class cqueue 預備知識 佇列 佇列也是一種常見的資料結構 特點是先進先出 fifo 在stl中有stack和queue兩個容器 template class stack 成員函式 empty size ...

劍指offer面試題11

面試題1 數值的整數的次方 題目 實現函式double power double base,int exponent 求base的 exponent次方。不得使用庫函式,同時不需要考慮大數問題。思路 首先應該明確指數的可能取值 正整數,0,負整數 另外還需要考慮底數是0的情形。對於負整指數,我們可以...

劍指offer面試題15

面試題15 鍊錶中倒數第k個結點 題目 輸入乙個鍊錶,輸出該鍊錶中倒數第k個結點。為了符合大多數人的習慣,本題從1開始計數,即鍊錶的尾結點是倒數第乙個結點。例如乙個鍊錶有6個結點,從頭結點開始它們的值依次是1 2 3 4 5 6。這個鍊錶的倒數第3個結點是值為4的結點。預備知識 鍊錶結點的定義如下 ...