C 劍指Offer上的題目1 9

2021-07-03 22:38:37 字數 2165 閱讀 6779

// test_little_0714.cpp : 定義控制台應用程式的入口點。

//#include "stdafx.h"

#include #include #include #include "time.h"

using namespace std;

int main()

/*//斐波那契數列的兩種方法,非遞迴的效率要高很多

long long fibonacci(int n)

return arr3;

}long long fibonacci_r(int n)

void main()

*//*//旋轉最小序列

void move_array(int* data, int idx, int size)

for (int i = idx; i < size; i++)

int num = size - idx;

for (int i = 0; i < idx; i++)

delete data2;

}void reverse(int* data, int length)

if (*temp < *p1)

p2 = temp;

else p1 = temp;

}//二分法找到最小值

int idx = p1 - data;//最小值所在的下標位置

move_array(data, idx, length);

}void main();

reverse(data, 7);

for (int i = 0; i < 7; i++)

cout << data[i] << endl;

getchar();

}*//*

//小範圍的(如年齡)時間複雜度為o(n)的排序

void sortages(int* ages,int length)

int sum = 0;

for (int i = 0; i < 1 + oldestage; i++) }}

void main()

cout << endl;

sortages(data, n);

for (int i = 0; i < n; ++i)

cout << data[i] << endl;

getchar();}*/

/*//快速排序

int partition(double* dat,int size)

else

} dat[i] = thresh;

return i;

}void q_sort(double* data,int size)

void main()

q_sort(data, n);

//partition(data, n);

for (int i = 0; i < n; i++)

cout << data[i] int idx = find(ino,size,pre[0]); //左子樹的節點個數

if (idx == -1)

return nullptr;

int * left_pre = pre + 1;

int * left_in = ino;

int * right_pre = pre + 1 + idx;

int * right_in = ino + 1 + idx;

head->left = construct(left_pre, left_in, idx);

head->right = construct(right_pre, right_in, size - idx - 1);

return head;

}void preorder(treenode*& head)

}void inorder(treenode* &head)

}int _tmain(int argc, _tchar* argv)

; int inorder = ;

treenode* head = construct(preorder, inorder, 8);

preorder(head);

cout << endl;

inorder(head);

getchar();

return 0;

}*/

劍指offer題目

在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。把乙個陣列最開始的若干個元素搬到陣列的末尾,我們稱之為陣列的旋轉。輸入乙個非減排序的陣列的乙個旋轉,輸出旋轉陣...

劍指offer的題目

題目描述 乙隻青蛙一次可以跳上1級台階,也可以跳上2級 它也可以跳上n級。求該青蛙跳上乙個n級的台階總共有多少種跳法。分析 跳乙個n階台階的方法數 class solution 題目描述 我們可以用2 1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2 1的小矩形無重疊地覆蓋乙個2 n的大矩形,總...

劍指OFFER 題目review

劍指offer ac 三道題,現在review下 題目一 從尾到頭列印鍊錶 輸入乙個鍊錶,按煉錶值從尾到頭的順序返回乙個arraylist。我的思路 1.鍊錶值從頭到尾順序放入vector中 2.逆序vector 實現 class solution int size data.size for in...