![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
牛客网
牛客网刷题
Valentin。
梦想还是要有的,要不然和咸鱼有什么区别
展开
-
牛客网【二叉树中是否存在节点和为指定值的路径】
class Solution {public: /** * * @param root TreeNode类 * @param sum int整型 * @return bool布尔型 */ bool flag = false; // 结果返回 void dfs(TreeNode *root,int sum, int total){ if(root == nullptr || flag == true){ ...原创 2021-08-28 11:07:22 · 57 阅读 · 0 评论 -
牛客网【子数组的最大累加和问题】
class Solution {public: /** * max sum of the subarray * @param arr int整型vector the array * @return int整型 */ int maxsumofSubarray(vector<int>& arr) { // write code here int dp[arr.size()]; // 开辟 ...原创 2021-08-27 19:02:07 · 50 阅读 · 0 评论 -
牛客网【判断链表中是否有环】
/*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(NULL) {}* };*/class Solution {public: bool hasCycle(ListNode *head) { if(head == nullptr || head-&...原创 2021-08-27 18:48:27 · 56 阅读 · 0 评论 -
牛客网【链表中环的入口结点】
class Solution {public: bool hasCycle(ListNode *head) { if(head == nullptr || head->next == nullptr){ return false; } ListNode *slow = head; ListNode *fast = head->next; while(slow != fast){ ...原创 2021-08-27 18:30:26 · 69 阅读 · 0 评论 -
牛客网【实现二叉树先序,中序和后序遍历】
/*** struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/class Solution {public: /** * * @param root TreeNode类 the root of binary tree * @return int整型vector<vector<>> ...原创 2021-08-25 10:48:44 · 132 阅读 · 0 评论 -
牛客网【合并另个有序的数组】
class Solution {public: void merge(int A[], int m, int B[], int n) { int i = m - 1; int j = n - 1; int index = m + n - 1; while(i >= 0 && j >= 0){ A[index--] = A[i] > B[j] ? A[i--] : B[j--];...原创 2021-08-25 10:47:37 · 68 阅读 · 0 评论 -
牛客网【二叉树的层序遍历】
/*** struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/class Solution {public: /** * * @param root TreeNode类 * @return int整型vector<vector<>> */ vector<vect...原创 2021-08-24 15:27:59 · 107 阅读 · 0 评论 -
牛客网【最长无重复子数组】
/*** struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/class Solution {public: /** * * @param root TreeNode类 * @return int整型vector<vector<>> */ vector<vect...原创 2021-08-24 14:58:03 · 67 阅读 · 0 评论 -
牛客网【用两个栈实现队列】
class Solution{public: void push(int node) { stack1.push(node); } int pop() { if(stack2.empty()){ while(!stack1.empty()){ stack2.push(stack1.top()); stack1.pop(); } ...原创 2021-08-24 14:50:30 · 96 阅读 · 0 评论 -
牛客网【反转链表】
class Solution {public: ListNode* ReverseList(ListNode* pHead) { if (pHead == nullptr) { return nullptr; } ListNode *pre = nullptr; ListNode *cur = pHead; while (cur) { ListNode *tmp = cu...原创 2021-08-24 14:40:58 · 59 阅读 · 0 评论 -
牛客网【数组中出现的超过一半的数字】
/*题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。示例1输入[1,2,3,2,2,2,5,4,2]返回值2*/class Solution {public: int MoreThanHalfNum_Solution(vector<int> numbers) { ...原创 2021-05-01 18:57:34 · 62 阅读 · 0 评论 -
牛客网【两数之和】
/*题目描述给出一个整数数组,请在数组中找出两个加起来等于目标值的数,你给出的函数twoSum 需要返回这两个数字的下标(index1,index2),需要满足 index1 小于index2.。注意:下标是从1开始的假设给出的数组中只存在唯一解例如:给出的数组为{ 20, 70, 110, 150 }, 目标值为90输出 index1 = 1, index2 = 2示例1输入[3, 2, 4], 6[2, 3]*/class Solution {public: vec..原创 2021-04-29 20:53:10 · 116 阅读 · 0 评论 -
牛客网【最小的k个数】
/*题目描述给定一个数组,找出其中最小的K个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。如果K>数组的长度,那么返回一个空的数组示例11输入[4,5,1,6,2,7,3,8],4返回值[1,2,3,4]*/class Solution {public: vector<int> GetLeastNumbers_Solution(vector<int> input, int k) { ...原创 2021-05-01 20:14:13 · 117 阅读 · 0 评论 -
牛客网【二分查找】
/*题目描述请实现有重复数字的升序数组的二分查找给定一个 元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1示例输入[1,2,4,4,5],4返回值2...原创 2021-05-01 20:19:48 · 128 阅读 · 0 评论