更深入的学习
文章平均质量分 53
更深入的学习
Big Fish 大鱼
勤学如春起之苗,不见其增,日有所长;辍学如磨刀之石,不见其损,日有所减。
展开
-
矩阵(稀疏矩阵)的转置算法(C语言)详解(三元组表)
矩阵(包括稀疏矩阵)的转置,即互换矩阵中所有元素的行标和列标,如图 1所示:图 1 矩阵转置示意图但如果想通过程序实现矩阵的转置,互换行标和列标只是第一步。因为实现矩阵转置的前提是将矩阵存储起来,数据结构中提供了 3 种存储矩阵的结构,分别是三元组顺序表、行逻辑链接的顺序表和十字链表。如果采用前两种结构,矩阵的转置过程会涉及三元组表也跟着改变的问题,如图 2 所示:图 2 三元组表的变化图 2a) 表示的是图 1 中转置之前矩阵的三元组表,2b) 表示的是图 1 中矩阵转置后对..转载 2022-03-11 09:54:12 · 13502 阅读 · 0 评论 -
子串和子序列
简明:子串:原序列中必须连续的一段子序列:原序列中可以不连续的一段KMP算法是求子串的算法,动态规划可以求子串或者子序列。举例说明://给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。//// 示例 1:// 输入: "abcabcbb"//输出: 3//解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。//// 示例 2:// 输入: "bbbbb"//输出: 1//解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。/原创 2022-03-09 10:57:41 · 470 阅读 · 1 评论 -
7-38 数列求和-加强版 (进位运算)
给定某数字A(1≤A≤9)以及非负整数N(0≤N≤100000),求数列之和S=A+AA+AAA+⋯+AA⋯A(N个A)。例如A=1,N=3时,S=1+11+111=123。输入格式:输入数字A与非负整数N。输出格式:输出其N项数列之和S的值。输入样例:1 3输出样例:123#include<iostream>using namespace std;int main() { int A, N; cin >> A >> .转载 2022-02-18 11:10:33 · 154 阅读 · 0 评论 -
7-37 整数分解为若干项之和 (深度优先搜索算法)
将一个正整数N分解成几个正整数相加,可以有多种分解方法,例如7=6+1,7=5+2,7=5+1+1,…。编程求出正整数N的所有整数分解式子。输入格式:每个输入包含一个测试用例,即正整数N (0<N≤30)。输出格式:按递增顺序输出N的所有整数分解式子。递增顺序是指:对于两个分解序列N1={n1,n2,⋯}和N2={m1,m2,⋯},若存在i使得n1=m1,⋯,ni=mi,但是ni+1<mi+1,则N1序列必定在N2序列之前输出。每个式子由小到大相加,式转载 2022-02-17 21:41:55 · 893 阅读 · 0 评论 -
7-34 通讯录的录入与显示 (结构体练习)
通讯录中的一条记录包含下述基本信息:朋友的姓名、出生日期、性别、固定电话号码、移动电话号码。 本题要求编写程序,录入N条记录,并且根据要求显示任意某条记录。输入格式:输入在第一行给出正整数N(≤10);随后N行,每行按照格式姓名 生日 性别 固话 手机给出一条记录。其中姓名是不超过10个字符、不包含空格的非空字符串;生日按yyyy/mm/dd的格式给出年月日;性别用M表示“男”、F表示“女”;固话和手机均为不超过15位的连续数字,前面有可能出现+。在通讯录记录输入完成后,最后一行给出正整数K,并原创 2022-02-17 16:09:22 · 697 阅读 · 0 评论 -
7-32 说反话-加强版
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过500 000的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用若干个空格分开。输出格式:每个测试用例的输出占一行,输出倒序后的句子,并且保证单词间只有1个空格。样例:">输入样例:Hello World Here I Come输出样例:Come I Here World Hello思原创 2022-02-17 11:39:27 · 84 阅读 · 0 评论 -
7-30 字符串的冒泡排序 (字符串函数应用)
我们已经知道了将N个整数按从小到大排序的冒泡排序法。本题要求将此方法用于字符串序列,并对任意给定的K(<N),输出扫描完第K遍后的中间结果序列。输入格式:输入在第1行中给出N和K(1≤K<N≤100),此后N行,每行包含一个长度不超过10的、仅由小写英文字母组成的非空字符串。输出格式:输出冒泡排序法扫描完第K遍后的中间结果序列,每行包含一个字符串。输入样例:6 2bestcateastafreeday输出样例:bestacatdayeas转载 2022-02-17 09:36:25 · 264 阅读 · 0 评论 -
7-18 二分法求多项式单根
输入格式:输入在第1行中顺序给出多项式的4个系数a3、a2、a1、a0,在第2行中顺序给出区间端点a和b。题目保证多项式在给定区间内存在唯一单根。输出格式:在一行中输出该多项式在该区间内的根,精确到小数点后2位。输入样例:3 -1 -3 1-0.5 0.5输出样例:0.33代码:#include <stdio.h>float f(float x);float a,b,c,d;int main(){ float x, y; ...原创 2022-02-13 22:21:13 · 478 阅读 · 0 评论 -
7-2 然后是几点(15 分)
有时候人们用四位数字表示一个时间,比如1106表示11点零6分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,即5点30分表示为530。注意,第二个数字表示的分钟数可能超过60,也可能是负数。输入格式:输入在一行中给出2个整数,分别是四位数字表示的起始时间、以及流逝的分钟数,其间以空格分隔。注意:在起始时间中,当小时为个位数原创 2022-02-10 16:26:28 · 58 阅读 · 0 评论 -
6-9 统计个位数字 (15 分)
6-9 统计个位数字 (15 分)本题要求实现一个函数,可统计任一整数中某个位数出现的次数。例如-21252中,2出现了3次,则该函数应该返回3。函数接口定义:int Count_Digit ( const int N, const int D );其中N和D都是用户传入的参数。N的值不超过int的范围;D是[0, 9]区间内的个位数。函数须返回N中D出现的次数。裁判测试程序样例:#include <stdio.h>int Count_Digit ( cons原创 2022-02-09 17:07:27 · 98 阅读 · 0 评论 -
C语言 ElementType
在C语言数据结构中,关于数据元素的类型定义均用“ ElemType e;”来表示,其中e是表示数据元素的变量,而ElemType则是它的类型,ElemType的含义就是“数据元素的类型”,是一个抽象的概念,是表示我们所要使用的数据元素应有的类型。ElemType是数据结构上为了说明问题而用的一个词。它是element type(“元素的类型”)的简化体。因为数据结构是讨论抽象的数据结构和算法,一种结构中元素的类型不一定是整型、字符型、浮点型或者用户自定义类型,为了不重复说明,使用过程用 “elemt转载 2022-02-08 22:27:37 · 11661 阅读 · 0 评论 -
C 库函数 - qsort()
描述C 库函数 void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void*))对数组进行排序。声明下面是 qsort() 函数的声明。void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void*))参数base-- 指向要排序的数组的第一个..原创 2022-02-08 16:43:01 · 566 阅读 · 0 评论 -
KMP----next数组 最长相同前后缀 递归求法解释
KMP----next数组 最长相同前后缀 递归求法解释理解递归(推)求解next数组的代码是个难点,对于刚入门来说next数组求解的时候是 已知next[0....j],next[j]=k.求解next[j+1]首先next[j]=k的含义是说前j-1个字符最长相同前后缀是k,也说明前缀的最后一个字符下标是k-1如果p[j]==p[k],那很明显是next[j+1]=k+1;p[j]!=p[k]时,这时候关键记住一句话:模式串的自我匹配想一想KMP是怎么减少重复比较的,不就是.转载 2021-06-17 10:27:58 · 699 阅读 · 0 评论 -
KMP算法中get_next函数分析
看了网上几个号称最简单的KMP算法分析,也都云里雾里,对于KMP的基本思想我还是略微了解的,但是get_next函数中(无论何种写法,总会有这种回溯的思想)j=next[j],我总是怀有疑问,为什么每次回溯的步长是next [j] ?我们先看get_next函数的代码:get_next函数:void get_next(int T[],int next[]){ int i=0; next[0]=-1; int j=-1; while (T[i]!='\0') {转载 2021-06-16 10:21:18 · 1729 阅读 · 1 评论 -
数据结构-静态链表
定义:用数组描述的链表,即称为静态链表。原创 2021-05-28 10:33:38 · 223 阅读 · 0 评论 -
英语长难句之非谓语动词作状语与独立主格-学习笔记
英语长难句之虚拟语气和独立主格原创 2021-05-06 11:12:46 · 3826 阅读 · 1 评论 -
英语长难句之并列与平行-学习笔记
英语长难句之并列句与平行结构原创 2021-04-27 17:58:56 · 3148 阅读 · 0 评论 -
英语长难句之分裂结构-学习笔记
长难句,整理自网络资料原创 2021-04-25 22:35:27 · 4987 阅读 · 0 评论 -
因式分解的常用三种方法
目录因式分解的一般步骤1.十字相乘法2.公式法3.分组分解法因式分解的一般步骤1、如果多项式的首项为负,应先提取负号;这里的“负”,指“负号”。如果多项式的第一项是负的,一般要提出负号,使括号内第一项系数是正的。2、如果多项式的各项含有公因式,那么先提取这个公因式,再进一步分解因式;要注意:多项式的某个整项是公因式时,先提出这个公因式后,括号内切勿漏掉1;提公因式要一次性提干净,并使每一个括号内的多项式都不能再分解。3、如果各项没有公因式,那么可尝试运用公式、十字相乘原创 2021-01-22 16:07:29 · 11614 阅读 · 0 评论 -
复合函数的极限与连续
目录复合函数的极限运算法则复合函数的连续性大背景:复合函数极限的运算法则这一节中,着重介绍的是函数极限的运算,故在这节中考虑的是函数极限的存在,并没有去涉及到后面所讲到的复合函数的连续性。复合函数的极限运算法则解释简单总结:满足以上条件时,复合函数的极限是外函数的极限几何示意图说明为什么定义中是g(x)≠u0所举的反例例子:g(x)=1 (x∈R),f(u)为分段函数:当u≠1时,f(u)=u;当u=1时,f(u)=2,取x0=1,则u0=1,【g(x)=u0原创 2021-01-21 10:19:31 · 29621 阅读 · 4 评论