![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
sinat_16045111
这个作者很懒,什么都没留下…
展开
-
剑指3--连续子数组的最大和2
第一种解法,太暴力,而且测试用力不能全部通过:class Solution {public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param array int整型vector * @return int整型vector */vector<int> FindGreatestSumOfSubArray(vector<int>& array原创 2022-05-08 23:49:25 · 188 阅读 · 0 评论 -
剑指2--连续子数组的最大和1
class Solution {public: int FindGreatestSumOfSubArray(vector<int> array) { int size = array.size(); int sum[size]; sum[0] = array[0]; int max1 = sum[0]; for (int i = 1; i < size; i++) { sum[原创 2022-05-08 23:43:50 · 173 阅读 · 0 评论 -
剑指--找出两个二叉树节点的最小父节点
方法1:class Solution {public:/**** @param root TreeNode类* @param o1 int整型* @param o2 int整型* @return int整型/void push_vec(TreeNode root, int o1,vector& path1,bool& find1) {if (root == nullptr || (find1)) {return;}if (!find1 && r原创 2022-05-08 15:07:06 · 511 阅读 · 0 评论 -
快速排序quicksort
快速排序采用的是分治法,是一种不稳定的算法,即相同元素的顺序会变化,其平均时间复杂度为O(nlogn) 可以通过设立随机key,避免已排好序的情况. 1)设置两个变量I、J,排序开始的时候:I=0,J=N-1; 2)以第一个数组元素作为关键数据,赋值给key,即 key=A[0]; 3)从J开始向前搜索,即由后开始向前搜索(J=J-1即J–),找到第一个小于key的值A[j],A[j转载 2017-03-18 19:26:27 · 178 阅读 · 0 评论 -
leecode 练习--树
leetcode 数据结构原创 2017-03-19 12:02:35 · 235 阅读 · 0 评论 -
01背包问题 C++
#include<stdio.h>#include<stdlib.h>#include<iostream>#include<math.h>#include<algorithm>#include<vector>using namespace std;//动态规划 之 01背包问题class PackageItem{public: char name; int weigh原创 2017-03-30 11:51:53 · 469 阅读 · 0 评论