- 博客(38)
- 收藏
- 关注
原创 机器学习--支持向量机
支持向量机1.简单介绍支持向量机(Support Vector Machine,SVM) 是一个非常优雅的算法,具有非常完善的数学理论,常用于数据分类,也可以用于数据的回归预测中,由于其其优美的理论保证和利用核函数对于线性不可分问题的处理技巧,在上世纪90年代左右,SVM曾红极一时。2.Demo实践(python)...
2020-08-26 12:01:05
302
原创 机器学习--决策树
决策树1.简单介绍决策树是一种常见的分类模型,在金融分控、医疗辅助诊断等诸多行业具有较为广泛的应用。决策树的核心思想是基于树结构对数据进行划分,这种思想是人类处理问题时的本能方法。例如在婚恋市场中,女方通常会先看男方是否有房产,如果有房产再看是否有车产,如果有车产再看是否有稳定工作……最后得出是否要深入了解的判断。如图:2.优缺点:优点:具有很好的解释性,模型可以生成可以理解的规则。可以发现特征的重要程度。模型的计算复杂度较低。缺点:模型容易过拟合,需要采用减枝技术处理。
2020-08-22 18:44:57
387
原创 Leetcode-第N个泰波那契数
题目描述方法一代码如下:(直接根据题意递归,这题给的标签是递归,但这样直接用递归做会超时)public class Solution { public int Tribonacci(int n) { if (n == 0) return 0; if (n == 1 || n == 2) return 1; return Tribonacci(n - 1) + Tribonacci(n - 2) +
2020-08-20 18:00:24
196
原创 MATLAB整数规划:匈牙利法
代码如下:%整数规划:匈牙利法function [x,z]=HungaryMethod(N)n=N;[row,col]=size(n);%第一步:增加0元素for i=1:row min_element=min(n(i,:)); if min_element~=0 n(i,:)=n(i,:)-min_element; endendfor i=1:...
2020-08-20 17:59:22
936
1
原创 MATLAB表上作业法解决运输问题
代码如下:%表上作业法求解运输问题%要求每个产地和每个销地之间都可达(即运价不可以存在inf)function [x,sigma]=Transport(N,out,in)%N:运价表 out:每个产地产量(按行输入) in:每个销地销量(按行输入)%x:最优运输方案sum_out=sum(out);sum_in=sum(in);%产大于销的情况,转换为产销平衡问题i...
2020-08-20 17:59:08
12083
7
原创 MATLAB整数规划:分支界定法
代码:%整数规划:分支界定法function [x,z]=BranchBound(N,b,Cn,Aeq,beq,lb,ub,fcheck)%N:系数矩阵 b:右端常数 Cn:目标函数的系数 Aeq,beq:等式约束左右两端%lb:决策变量下界 ub:决策变量上界%fcheck:目标函数最大值问题,填1;目标函数最小值问题,填-1;[m,n]=size(Cn);Cn=C...
2020-08-20 17:58:36
6253
3
原创 Leetcode-课程表II
题目描述:解决方法一:1.用_in来记录每个课程的入度;2.循环:若有入度为0的课程,则找到该课程,将该课程的后继课程入度减1;并将该课程的入度变为-1,表示该课程已学过;并将该课程存入res链表;3.若循环结束后,所有课程的入度都为-1,则表示全部课程都学完,返回res的数组;否则,返回空数组。代码如下:public class Solution { public int[] FindOrder(int numCourses, int[][] prerequisites)
2020-05-12 17:23:26
183
原创 Leetcode-课程表
题目描述思路:用_in来记录每个课程的入度;若有入度为0的课程,则找到该课程,将该课程的后继课程入度减1;并将该课程的入度变为-1,表示该课程已学过;若循环结束后,所有课程的入度都为-1,则表示全部课程都学完,返回true;否则,返回false。代码如下:public class Solution { public bool CanFinish(int numCourses, int[][] prerequisites) { int[]
2020-05-12 15:28:19
239
原创 MATLAB实现单纯形算法和对偶单纯形算法
单纯形算法算例:代码如下:%单纯形算法%Cn按行输入,b按列输入,N按系数矩阵正常输入function [ X,z ] = func( N,b,Cn )%N:约束条件系数矩阵,b:资源向量,Cn:价值向量[row,col]=size(N);Ab=eye(row);%松弛变量的系数矩阵(单位阵)A=[N,Ab];%完整的系数矩阵[row2,col2]=size(A);Cb=ze...
2020-05-11 09:16:59
1285
原创 Leetcode-二叉树的最近公共祖先
题目描述代码如下:/** * Definition for a binary tree node. * public class TreeNode { * public int val; * public TreeNode left; * public TreeNode right; * public TreeNode(int x) { val =...
2020-05-10 09:31:20
168
原创 Leetcode-二叉树的最大深度
题目描述代码如下:/** * Definition for a binary tree node. * public class TreeNode { * public int val; * public TreeNode left; * public TreeNode right; * public TreeNode(int x) { val =...
2020-05-10 09:30:52
128
原创 Leetcode-对称二叉树
题目描述代码如下:/** * Definition for a binary tree node. * public class TreeNode { * public int val; * public TreeNode left; * public TreeNode right; * public TreeNode(int x) { val =...
2020-04-26 20:02:48
262
原创 Leetcode-相同的树
题目描述代码如下:/** * Definition for a binary tree node. * public class TreeNode { * public int val; * public TreeNode left; * public TreeNode right; * public TreeNode(int x) { val =...
2020-04-22 18:52:26
139
原创 Leetcode-格雷编码
题目描述思路:这道题是参考一个题解给出的规律做出来的,这个规律实在是没想到。代码如下:public class Solution { public IList<int> GrayCode(int n) { IList<int> code = new List<int>(); ...
2020-04-18 11:43:17
159
原创 Leetcode-子集
题目描述思路:若数组中有n个元素,则所有子集的个数为pow(2,n)。我们可以用二进制来解决这个问题。举个例子:若 int [ ]nums={1,2,3},则有以下情况:[ 0 0 0 ]对应[ ][ 0 0 1 ]对应[3][ 0 1 0 ]对应[2][ 1 0 0 ]对应[1][ 0 1 1 ]对应[2 3][ 1 0 1 ]对应[1 3][ 1 1 0 ]对应[1 ...
2020-04-15 21:05:02
234
原创 Leetcode-只出现一次的数字
题目描述解法一:暴力法思路:代码如下:public class Solution { public int SingleNumber(int[] nums) { int j; int n; f...
2020-04-12 20:40:52
187
原创 Leetcode-无重复字符的最长子串
题目描述思路:这个题目我们可以用队列解决。首先,判断字符串中的字符是否在队列中,若不在,则入队;如果已在队列中,则判断当前队列的长度是否大于max,若大于max,则对max进行赋值,然后删除队列中重复元素之前的所有字符,进行下一轮循环,直至遍历整个字符串。代码如下:public class Solution { public int LengthOfLongestSubstri...
2020-04-09 11:32:51
166
原创 Leetcode-反转字符串
题目描述思路:代码如下:public class Solution { public void ReverseString(char[] s) { char c; for (int i = 0; i < s.Length/2; i++) { c = s[i]; s[i] = s[s.L...
2020-04-06 16:40:10
165
原创 Leetcode-最长公共前缀
题目描述思路:代码如下:public class Solution { public string LongestCommonPrefix(string[] strs) { if (strs.Length ==0 ) { ...
2020-04-06 16:38:40
143
原创 Leetcode-滑动窗口最大值
题目描述代码如下:public class Solution { public int[] MaxSlidingWindow(int[] nums, int k) { Queue<int> q = new Queue<int>(); int[] result=new int[nums.Length-...
2020-03-29 19:25:56
101
原创 Leetcode-设计循环双端队列
题目描述代码如下public class MyCircularDeque { private int _length; private int _maxsize; private int pFront; private int pRear; private ...
2020-03-29 19:25:39
136
原创 Leetcode整数反转
题目描述思路:代码如下:class Solution {public: int reverse(int x) { int s = 0; while (x != 0) { if(s>INT_MAX/10||s<INT_MIN/10) { retu...
2020-03-29 19:25:15
107
原创 逆波兰表达式求值
题目描述思路:定义一个栈,将tokens里的元素依次入栈,若遇到运算符,则将靠近栈顶的两个元素取出来进行运算,将运算结果再次入栈,直到栈里只剩下一个元素,然后返回栈顶元素即可。代码如下:public class Solution { public int EvalRPN(string[] tokens) { int m, n; ...
2020-03-21 16:03:02
91
原创 最小栈
题目描述思路:代码如下:public class MinStack { Stack<int> stack1; Stack<int> stack2; /** initialize your data structure here. */ public MinStack() { stack1 =...
2020-03-21 16:02:49
104
原创 有效的括号
题目描述思路:代码如下:public class Solution { public bool IsValid(string s) { if(s.Length==0) { return true; } if(s[0]==']'||s[0]=='}'||s[0]==')') { ...
2020-03-21 16:02:33
117
原创 环形链表
题目描述:思路:给两个指针,node指向head,temp指向head.next,让temp每次移动两个位置,而node每次移动一个位置,如果链表是环形链表,则temp指针最后必将追上node;若遍历完整个链表temp仍没有追上node,那么该链表就不是环形链表。代码如下:/** * Definition for singly-linked list. * public class ...
2020-03-12 17:44:23
82
原创 删除排序链表中的重复元素
题目描述:解答方法一:新建一个链表,将head链表里的元素与新链表里的元素比较,若不相等,则存入新链表中。缺点:建立链表时需要提供一个整形数字,如果该数字与测试用例中的第一个数字相等,则无法输出正确结果。代码如下:/** * Definition for singly-linked list. * public class ListNode { * public int v...
2020-03-12 17:44:00
119
原创 合并两个有序链表
题目描述思路:建立一个新链表,将新链表的节点指针指向l1,l2中val较小的节点,直到遍历完l1,l2其中一个链表,然后将新链表的指针直接指向未遍历完的另一个链表,由于最开始初始化时链表list的第一个元素为0,所以最后返回list.next。代码如下:/** * Definition for singly-linked list. * public class ListNode {...
2020-03-12 17:43:31
112
1
原创 买卖股票的最佳时机Ⅱ
题目描述思路:代码如下:class Solution {public: int maxProfit(vector<int>& prices) { int i; int sumpro=0; int min=INT_MAX; if(prices.size()==0) { ...
2020-03-07 12:17:10
102
原创 猜数字小游戏
题目描述思路:让系统生成一个随机数,然后让用户输入一个数据,运用while循环,将用户的数据与随机数做比较,并输出相应结果。可以用try...catch语句来判断用户输入的是否为整数,若输入的数据类型不是整数,则让用户重新输入数据。代码如下:using System;using System.Collections.Generic;using System.Linq;usi...
2020-03-03 11:50:44
205
原创 买卖股票的最佳时机
题目描述思路:代码如下:class Solution {public: int maxProfit(vector<int>& prices) { int i,j,n; int max=0; for(i=0;i<prices.size();i++) { for(j=i+...
2020-03-01 10:41:36
111
原创 合并两个有序数组
题目描述思路:先将两个数组进行合并,然后将新数组按照从小到大排序即可。代码如下:class Solution {public: void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) { int i,j,r; for(j=0;j<...
2020-02-26 17:10:46
101
原创 最大子序和
题目描述思路:一开始令max等于最小值,然后将数组里面的元素依次求和,并与max进行比较,把最大的和存入max,最后返回max的值。代码如下:class Solution {public: int maxSubArray(vector<int>& nums) { int max=INT_MIN; int i,j,sum; ...
2020-02-26 17:10:29
84
原创 移除元素
题目描述思路:将所给的val依次与数组中的每一个元素进行比较,把第一个与val不相等的数复制到nums[0],第二个与val不相等的数复制到nums[1],以此类推,直到最后一个元素为止,最后返回新数组的长度。代码如下:class Solution {public: int removeElement(vector<int>& nums, int val) ...
2020-02-20 16:33:49
106
原创 两数之和
两数之和题目描述:思路:将所给数组的第一个元素与其后面的元素分别相加,判断它们的和是否等于目标值,若相等,则返回这两个整数的数组下标;若不相等,则将第二个元素与其后面的元素分别相加,并进行判断,以此类推,直到找遍数组中的所有可能情况。实现代码如下:class Solution {public: vector<int> twoSum(vector<int>...
2020-02-19 21:22:03
135
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅