c/c++
萱子子子
一枚插科打诨的早起的喵
展开
-
第一讲:c/c++基本字符数字输入printf(),scanf_s(),gets_s(),getchar()
简单的输入操作.总结今天学习的简单的输入输出函数对,3个标准输入函数:scanf_s()、gets_s()、fgets(),3个标准输出函数:printf()、puts()、fputs()原创 2017-04-07 16:36:16 · 3889 阅读 · 0 评论 -
C++算法4:链表去重
1.给定排序的链表,删除重复元素,只保留重复元素第一次出现的结点。 (1)代码:(2)结果:2.给定排序的链表,删除重复元素,只保留重复元素最后一次出现的结点。 (1)代码:(2)结果: 3.给定排序的链表,删除所有重复元素。 (1)代码:(2)结果:...原创 2018-08-10 17:13:44 · 2526 阅读 · 0 评论 -
C++算法5:栈解决括号匹配
1.给定字符串,仅由“()[]{}”六个字符组成。设计算法,判断该字符串是否有效。 2.代码:# include <iostream># include<stack>using namespace std;//声明函数bool Left(char s);bool IsMatch(char s1, char s2);bool MatchAll(cons...原创 2018-08-13 11:11:29 · 453 阅读 · 0 评论 -
C++算法6:队列解决最短路径条数
1.2.代码:3.结果:原创 2018-08-13 21:10:06 · 908 阅读 · 0 评论 -
C++算法9:KMP应用求字符串最小周期
1.输入重复序列的字符串,如果周期不存在,输出NO,如果周期存在,输出最小周期。 2.代码:# include <iostream># include <string>using namespace std;int MinPeriod(char *p){ int len = (int)strlen(p); if (len == 0) ...原创 2018-08-22 20:37:27 · 1141 阅读 · 2 评论 -
C++算法10:字符串频数问题
1.输入字符串,如果某字符出现次数最多,并且等于其他字符出现的总和,那么输出“YES”,其他输出NO。 例如:输入”asdff”,输出”NO”,输入”asssdf”,输出”YES” 2.代码:# include &amp;lt;iostream&amp;gt;# include&amp;lt;vector&amp;gt;using namespace std;//声明int CalFre(const char ...原创 2018-08-23 10:15:37 · 403 阅读 · 0 评论 -
C++算法11:Manacher解决字符串最大回文数问题
1.输入字符串,输出最大回文长度 2.代码:# include <iostream># include<string># include<algorithm>using namespace std;//声明int Init();int Manacher();char str[100];char s_new[200];int p[...原创 2018-08-23 13:10:14 · 814 阅读 · 0 评论 -
C++算法7:拓扑排序
1.对一个有向无环图(Directed Acyclic Graph,DAG)G进行拓扑排序,是将G中所有顶点排成线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前. 一种可能的拓扑排序结果2-&gt;8-&gt;0-&gt;3-&gt;7-&gt;1-&gt;5-&gt;6-&gt;9-&gt;4-&gt;原创 2018-08-21 15:19:25 · 588 阅读 · 0 评论 -
C++算法3:链表划分
1.给定一个链表和一个值X,将链表划分为两部分,使得划分后小于X的节点在前,大于等于X的节点在后。这两部分要保持原来链表中的顺序。 2.程序:# include &amp;amp;lt;iostream&amp;amp;gt; using namespace std;//定义节点结构typedef struct snode{ int data; snode *pnext; snode(in...原创 2018-08-10 15:25:54 · 363 阅读 · 0 评论 -
C++算法2:链表翻转
1.对顶一个链表,翻转该链表从m到n的位置。要求直接翻转而非申请新空间。 2.代码:原创 2018-08-09 16:37:41 · 850 阅读 · 0 评论 -
第二讲:c/c++数据类型
简单的数据类型复习原创 2017-04-07 20:24:13 · 390 阅读 · 2 评论 -
第三讲:c/c++循环语句for(),if(),swich(),do while(),
关于几个经典循环的语句以及简单的程序练习原创 2017-04-07 21:22:40 · 8448 阅读 · 0 评论 -
第四讲:c/c++简单的函数叙述
函数的简单声明,调用,递归函数的使用原创 2017-04-08 14:23:08 · 422 阅读 · 0 评论 -
第六讲:c/c++复合数据类型struct以及联合类型union,动态内存申请malloc和calloc
关于复杂的变量类型——结构体的定义原创 2017-04-08 15:47:00 · 1010 阅读 · 0 评论 -
第五讲:c/c++数组与指针
本文的编写是为了在学习c++的时候加深自己的记忆,同时也为与我一般的初学者提供一些参考,此处特别感谢微信公众号“c/c++的编程教室”,我的学习过程按照公众号的推送进行学习的!1.数组:数组类型+数组名[数组长度]={数组元素}数组可以定义长度,如:int m_array1[20];float m_array2[20];char m_array3[20];也可以直接赋值,如:in原创 2017-04-08 14:38:07 · 325 阅读 · 0 评论 -
第七讲:c/c++文件的读取、操作和定位
主要是文档的各种操作原创 2017-04-08 16:52:36 · 3526 阅读 · 0 评论 -
第八讲:c/c++综合练习——存储电话号码
通过前面的关于c/c++的学习,大致的基础已经掌握,现在写一个关于存储电话号码的综合练习原创 2017-04-10 10:43:34 · 1925 阅读 · 0 评论 -
C++算法1:链表相加
1.给定两个链表,分别表示两个非负整数。它们的数字逆序存储在链表中,且每个结点只存储一个数字,计算两个数的和,并且返回和链表头指针。 2.代码实现:# include &amp;amp;amp;lt;iostream&amp;amp;amp;gt; using namespace std;//定义节点结构typedef struct snode { int data; snode *pnext; snod...原创 2018-08-09 09:43:56 · 1602 阅读 · 0 评论 -
C++算法8:逆波兰表达式的计算
1.计算方法:当前字符为操作数,则压栈;若当前字符是操作符,则弹出栈中的两个操作数,计算后压栈。 2.代码# include&amp;amp;lt;iostream&amp;amp;gt;# include&amp;amp;lt;stack&amp;amp;gt;# include&amp;amp;lt;stdlib.h&amp;amp;gt;using namespace std;//声明原创 2018-08-21 20:48:05 · 1566 阅读 · 0 评论