- 博客(24)
- 收藏
- 关注
原创 Topsis
极小型yixmax−xi中间型yi1−max∣xmax−xbest∣∣xmin−xbest∣xi−xbest区间型yimax∣xi−a∣∣xi−b∣若最佳区间为ab]zij∑i1nxij2xijzmaxz11...zn1.....maxzn1。
2023-07-20 18:25:46
63
原创 AHP-层次分析法
由于主观性 上面等式可能不成立 ,比如苹果比西瓜好吃,西瓜比香蕉好吃,但又觉得香蕉比苹果好吃,所以做一致性检验看看在多大程度上能满足上式。进行一致性检验的时候 RI 一般只提供到15 所以注意对于特别大的数据 我们不能使用层次分析法,采用topsis方法。因为打分矩阵是半客观半主管构造的,理论上i对j的重要程度=(i对k)* (k对j)的,即。时可以认为一致性检验通过。的重要程度,相应的有。
2023-07-19 16:45:34
171
原创 CSAPP: Cache Lab Part_1
#include<stdio.h>#include<stdlib.h>#include<getopt.h>#include<limits.h>#include<unistd.h>#include"cachelab.h"typedef unsigned long int uint64;int v=0,s,E,b,S,B;int hits=0,misses=0,evictions=0;FILE *fp;const char* us
2022-03-09 21:45:09
129
原创 CSAPP Lab2
高质量解析https://www.cnblogs.com/wulichenai/p/14130721.htmlhttps://www.zybuluo.com/SovietPower/note/1786675#hintshttps://zhuanlan.zhihu.com/p/339461318Phase_10000000000400ee0 <phase_1>: 400ee0: 48 83 ec 08 sub $0x8,%rsp 400ee4: be
2022-02-15 20:04:30
544
原创 UVA442 矩阵链乘
UVA442 矩阵链乘注意理解题目里这句话Expression = Matrix | “(” Expression Expression “)”这表明括号里面不可能出现 ( A B C) 这种情况 括号里面要么是 矩阵乘矩阵要么是矩阵乘表达式 要么是表达式乘表达式可以用栈模拟 注意 (AB) 先出栈的是 B#include<bits/stdc++.h>#define mp(x,y) make_pair(x,y)using namespace std;const int INF
2022-01-21 15:29:53
321
原创 Leetcode 剑指 05
leetcode链接双指针法class Solution {public: string replaceSpace(string s) { int len = s.length(),count=0; for(auto c : s){ if(c == ' ') count++; } s.resize(len + 2*count); int i = len-1 , j = s.length()
2022-01-18 15:01:58
124
原创 Leetcode 剑指 03
数组中重复的数设nums[i] = m ,分下面三种情况m == im!=i and nums[m] == m 说明 m 在 i 和 m 重复两次m!=i and nums[m] != m 把m交换到 nums[m] 处class Solution {public: int findRepeatNumber(vector<int>& nums) { int i=0, n = nums.size(); while(i < n ){
2022-01-17 16:47:12
208
原创 回溯法与DFS——八皇后问题
题目描述可以专跳到这回溯法与剪枝同时一点说,就是运用DFS或者BFS一个个找,如果遇到了一种情况,继续找下去会没有意义了,我们就停止寻找,返回上一个状态,举一个简单的例子来说明,比如我们寻找1000以内的素数,如果发现x可以被y整除,那么就没有必要继续找下去了停止搜索,这一步也俗称剪枝,返回x-1,下一个是x+1,这一步大概就是回溯八皇后问题也算是学习的一个门槛的,第一步何时终止递归大概...
2020-04-16 10:01:49
184
原创 子集生成——增量构造法与利用子集的递归算法
增量构造法说实话增量填补法有点难懂,思路大概是DFS,然后s那个地方其实还有剪枝操作void subset(int n,int *a,int cur){ //输出第一个到当前的子集 for (int i = 0; i < cur; ++i) cout<<a[i]; cout<<endl; //这里还顺带有...
2020-04-12 22:06:54
196
原创 Leetcode78——生成子集的方法——二进制法与位向量法
题目描述给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。输入: nums = [1,2,3]输出:[[3],[1],[2],[1,2,3],[1,3],[2,3],[1,2],[]]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/subsets著作权归领...
2020-04-12 14:11:28
204
原创 通过前序遍历建立树——PTA——03-树3 Tree Traversals Again (25分)
An inorder binary tree traversal can be implemented in a non-recursive way with a stack. For example, suppose that when a 6-node binary tree (with the keys numbered from 1 to 6) is traversed, the stac...
2020-04-10 18:10:25
131
原创 BFS——PTA——03-树2 List Leaves (25分)
Given a tree, you are supposed to list all the leaves in the order of top down, and left to right.Input Specification:Each input file contains one test case. For each case, the first line gives a po...
2020-04-10 17:54:31
124
原创 PTA 03-树1 树的同构 (25分)
给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。C 5 -D - -E 6 -G 7 -F - -H - -8G - 4B 7 6F - -A 5 1H - -C 0 -D - -E 2 -输出样...
2020-04-10 17:51:46
951
原创 链表的一些简单操作——PTA——一元多项式的乘法与加法运算
设计函数分别求两个一元多项式的乘积与和。输入格式:输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式:输出分2行,分别以指数递降方式输出乘积多项式以及和多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。零多项式应输出0 0。输入样例:4 3 4 -5 2 6 1 ...
2020-04-10 17:45:39
306
原创 合法出入栈——PTA——02-线性结构4 Pop Sequence (25分)
Given a stack which can keep M numbers at most. Push N numbers in the order of 1, 2, 3, …, N and pop randomly. You are supposed to tell if a given sequence of numbers is a possible pop sequence of the...
2020-04-10 17:42:58
158
原创 链表翻转——PTA——02-线性结构3 Reversing Linked List (25 分)
02-线性结构3 Reversing Linked List (25 分)Given a constant K and a singly linked list L, you are supposed to reverse the links of every K elements on L. For example, given L being 1→2→3→4→5→6, if K=3, the...
2020-04-10 17:38:54
146
原创 BFS与DFS——Leetcode111与 1302. 二叉树的最小深度
这道题的思路比较明显;有两种第一种是用BFS:用两个队列来记录;第一个用来记录树的节点另个用来记录树的节点的高度如果遇到第一个叶结点,也就是遇到了最小深度# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# ...
2020-04-10 17:05:59
108
原创 深入理解计算机系统读书笔记——信息的储存与运算——整数补码反码与原码
信息的储存布尔代数异或⊕运算a⊕a=0 异或\oplus 运算 a\oplus a = 0异或⊕运算a⊕a=0a⊕0=a a\oplus 0 = aa⊕0=a可以知道异或运算的每个逆元都是他本身,并且满足交换律和结合律,可以知道这是一个阿贝尔群…学过抽代的应该明白啥意思,我们知道异或运算有一个奇技淫巧来交换两个值a1=a⊕b, a_1 =a \oplus b, a1=a⊕...
2020-03-30 17:40:43
168
原创 判断是否合法出入栈——Uva 514
嗯,,,这题基本上就是判断是否合法出入栈需要注意的是有几个变量记得要回归初始状态!!!!比如中间那个中间站,如果没法按照B目标出来了话,要把中间那个栈清空,当中B目标栈全部都出去了,并且A栈全部进去就说明成功了就可以Yes;#include<iostream> #include<cstdio> #include<fstream> #include&l...
2020-02-11 16:37:25
162
原创 合并两个有序链表
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。输入:1->2->4, 1->3->4输出:1->1->2->3->4->4这是一道很简单的题目,但是简单题目深入学习,好好的把它给弄懂;递归法实现先排除两种极端情况如果L1为空了话就返回L2如果L2为空了话就返回L1如果两个都不为空...
2019-12-11 22:15:44
62
原创 C/C++ 中几种输入/输出 以及其中的bug
1.输入缓存区与终端缓存区键盘输入的数据会先直接到 输入缓存区(包括你打的回车,空格之类的,全部都会到输入缓存区) , 然后会有一部分数据被抛弃 另一部分到输出缓存区;这里再顺便说一下空白字符 指空格 回车 制表这些;2. cin 与 cout注:字符串的输入 会舍弃一切空白 而字符的输入也会舍弃一切空白字符;字符或者字符串在输出的时候 也会舍弃一切空白字符;char a[10] , ...
2019-07-31 16:43:19
297
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人