笔记
The C
Don't tell me the sky is the limit when there are footprints on the moon.
展开
-
《机器学习线性代数基础》Python描述——第二章笔记
建议先看完上一篇内容再看此片附上上篇链接:第一章笔记“秩”——是映射后空间形态的决定因素可以概况地说,由于矩阵乘法的作用,原始向量的空间位置甚至其所在空间的维度和形态都发生了变化,这便是矩阵乘法的空间映射作用。对于m行n列的矩阵A,当m<n这种情况下,“矮胖”矩阵A压缩了原始空间。第一种情况:如果这3个二维目标向量满足不全部共线,那么其所有的线性组合结果就能构成一个二维平面,即经过矩阵A的映射,整个三维空间被压缩成一个二维平面。第二种情况:如果这3个二维向量是共线向量,即三者都在同一条直线原创 2020-08-05 17:34:02 · 354 阅读 · 0 评论 -
两种二分查找——找到序列中的第一个出现的该元素和找到序列中最后一个出现的该元素
好了,看到标题相信你就明白这是一篇关于二分查找的文章,对于最常用的二分查找我就不在此叙述了,下面分享特殊的二分查找(其实也不特殊,算是有一点技巧吧)1.找到序列中的第一个出现的该元素2.找到序列中最后一个出现的该元素上代码,这才是你们想要的:int mid;int halfFind0(int *arr, int i, int j, int x){ while(i<j){ ...原创 2019-11-16 21:19:35 · 535 阅读 · 0 评论 -
动态规划——连续邮资问题
题目:假设国家发行了n种不同面值的邮票,并且规定每张信封上最多只允许贴m张邮票。连续邮资问题要求对于给定的n和m的值,给出邮票面值的最佳设计,在1张信封上可贴出从邮资1开始,增量为1的最大连续邮资区间。例如,当n=5和m=4时,面值为(1,3,11,15,32)的5种邮票可以贴出邮资的最大连续邮资区间是1到70。思想:首先比较困难的这个题目看上去循环是没有上限的,也就是我们看似找不到循环边界,...原创 2019-11-05 21:33:51 · 2134 阅读 · 0 评论 -
输入一个数N,求出1~N中包含1的个数的总和(时间复杂度控制在O(logn))
题目:输入一个数N,求出1~N中包含1的个数的总和(时间复杂度控制在O(logn))思想:按每一位,考虑1出现的情况,找出递推式代码展示:#include<stdio.h>int main(){ int n=1034; int k,q,s=0,t=1; int l=1; q=n; while(l>0) { l=n/10; k=n%10; if (k==...原创 2019-11-05 21:31:36 · 1009 阅读 · 0 评论 -
数据结构与算法之递归系列
递归的分析与总结题目:有 5 个人坐在一起,问第 5 个人多少岁,他说比第 4 个人大 2 岁。问第 4 个人多少岁,他说比第 3 个人大2岁。问第 3 人多少岁,他说比第 2个 人大 2 岁。问第2个人多少岁,他说比第 1 个人大 2 岁。最后问第 1 个人,他说他是 10 岁。编写程序,当输入第几个人时求出其对应的年龄。题目:斐波那契数列题目:一只青蛙一次可以跳上 1 级台阶,也可以跳上...原创 2019-10-25 21:23:13 · 375 阅读 · 0 评论 -
关于树与二叉树的问题的一些理解和总结
树与二叉树的主要题型:1.重建二叉树2.二叉树的下一个结点3.树的子结构(判断B是不是A的子结构)4.二叉树的镜像(判断一棵二叉树是不是对称的)5.对称二叉树(同上)6.从上到下打印二叉树(层次遍历)7.二叉树的后续遍历序列(重点是非递归)8.二叉树从根结点到某一节点的路径上结点值的和为sum,输出这样的结点和整个序列9.序列化二叉树(序列化和反序列化,即根据前中后任意一种遍历构...原创 2019-10-25 20:30:42 · 443 阅读 · 0 评论 -
二路归并排序
/*************************************************函数名称:mergearray*参数:a:待归并数组;first:开始下标;mid:中间下标;* last:结束下标;temp:临时数组*说明:将有二个有序数列a[first...mid]和a[mid...last]合并 ******************************...原创 2019-10-24 20:47:42 · 101 阅读 · 0 评论 -
堆排序
https://blog.csdn.net/l577217/article/details/80516654原创 2019-10-24 20:33:59 · 80 阅读 · 0 评论 -
选择排序
每次找最小或者最大的放在头或者尾部,然后遍历下去,依次把剩下元素中最小或者最大的放在第一个元素后面void swap(int *a, int *b){ int temp = *a; *a = *b; *b = temp;}void SelectSort(int *arr, int length){ if (arr == NULL || length &l...原创 2019-10-24 19:55:05 · 99 阅读 · 0 评论 -
快速排序——使用广泛!!!
void quickSort(int *nums, int left, int right){ if (left > right) return; int low = left; int high = right; int base = nums[left]; while (low < high) { whil...原创 2019-10-24 19:47:00 · 406 阅读 · 0 评论 -
双向起泡排序(冒泡排序的优化)算法
#include "stdio.h" //交换数字 void swap(int *a,int *b){ int temp; temp=*a; *a=*b; *b=temp;} //双向起泡排序 void bubbleSort(int a[],int n){ int low=0,high=n-1; int i,j; int flag=1;//一趟排序结束是否有交换 wh...原创 2019-10-24 17:00:30 · 1671 阅读 · 0 评论 -
floyd算法应用场景
Floyd算法编程题目:编程求解几座城市之间的最短距离,以及最短距离所经过的城市。#include <string.h> #include <stdio.h> #define NUMS 12 #define INF 65535 typedef struct { char vertex[NUMS]; int ed...原创 2019-10-24 16:20:31 · 1261 阅读 · 1 评论 -
prim算法
主要思想:以顶点为主线,构成生成树。把图的顶点分成两类,一类是生成树中的点(类A),另一类是图余下的点(类B)。从与类A中的点相邻接的,属于类B的点中,选择权值最小的边,把它加入到生成树中,直到图中所有顶点被加入类A。int Prim(Graph g){ int sum = 0, v; int vset[Max]; info lowcost[Max];//保存最小生成树的顶点是谁拉进来...原创 2019-10-24 15:37:18 · 106 阅读 · 0 评论 -
查找专题
题目:一个长度为L(L ≥ 1)的升序序列S,处在第[L/2]个位置的数。例如,对于两个升序序列S1=(11,13,15,17,19),则S1的中位数为15。若又有一个升序序列S2=(2,4,6,8,20),两个序列的中位数定义为它们所有元素的升序序列的中位数,则S1和S2的中位数为11.现有两个等长的用单链表存储的升序序列A和B,设计一个算法,找出两个序列A和B的中位数。代码展示:假设不是单...原创 2019-10-24 10:03:48 · 941 阅读 · 0 评论 -
树与二叉树专题
题目:原创 2019-10-13 21:49:00 · 213 阅读 · 0 评论 -
栈、队列、串专题
题目:设有一个元素类型为整型的栈S,设计一个算法,借助另一个栈实现把该栈的所有元素从栈顶到栈底按从小到大次序排列起来代码展示:(注意来回倒时候终止条件)void SortByAnotherStack(Stack &S1,Stack &S2){ if(S1.top==-1 || S1.top==0) return; int t,temp; while(S...原创 2019-10-08 20:31:12 · 328 阅读 · 0 评论 -
线性表专题
题目:设计算法分段逆置线性表。例如线性表(1,2,3,4,5,6,7,8),按k等于3分段逆置得到(3,2,1,6,5,4,8,7)代码展示:(此题注意死循环,故使用r保存p的位置,防止断链或死循环)void Reverse(LinkList &L,int k){ LinkList s = L; LinkList p,q; p = s->next; ...原创 2019-09-15 22:00:07 · 158 阅读 · 0 评论 -
简易笔记
第四章——树与二叉树:满二叉树:高度为h且含有2^h-1个结点的二叉树,所有叶子结点都在最底下一层,且除了叶子结点之外的每个节点的度为2完全二叉树:叶子结点只可能在层次最大的两层出现,对于最大层次中的叶子结点,都依次排在该层最左边的位置上;若有度为1的结点,则只可能有一个,且该结点只有左孩子而无右孩子二叉排序树:左结点的值<根结点的值<右结点的值(左右左右子树又各是一棵二叉排序树...原创 2019-09-07 21:43:54 · 213 阅读 · 0 评论