以下为本人做t归整的个人觉得比较易懂的代码
#include <list>
#include <vector>
#include <iostream>
#include <map>
#include <stack>
using namespace std;
struct ListNode {
int val;
struct ListNode *next;
ListNode(int x) :
val(x), next(NULL) {
}
};
class Solution
{
public:
bool Find(int target, vector<vector<int> > array) {/*二维数组查找*/
map<int, bool>mp;
for (int i = 0;i < array.size();i++)
{
for (int j = 0;j < array[i].size();j++)
{
mp[array[i][j]] = true;
}
}
return mp.find(target) != mp.end();
}
vector<int> printListFromTailToHead(ListNode* head) /*尾头打印链表*/
{
vector<int> res;
stack<int> s;
if (head == NULL)
return res;
ListNode* p = head;
while (p != NULL) {
s.push(p->val);
p = p->next;
}
while (!s.empty()) {
res.push_back(s.top());
s.pop();
}
return res;
}
};
int main()
{
Solution s1;
/*vector<vector<int> > a(2,vector<int>(2)); a[0][0] = 1; a[0][1] = 2; a[1][0] = 3; a[1][1] = 4;*/
//cout << s1.Find(4, a)<<endl;
/*ListNode L1(0); ListNode L2(5); ListNode L3(6); L1.next = &L2; L2.next = &L3; vector<int> a = s1.printListFromTailToHead(&L1); for (int i=0;i<a.size();i++) { cout << a[i] << " "; }*/
getchar();
return 0;
}