C语言
Telescope@moon
这个作者很懒,什么都没留下…
展开
-
约瑟夫环链表版
注意while 这个地方,如果直接用if要多循环好多次,但是用while直到不为0省去好多功夫#include<stdio.h>struct person{ int num; int next;}; int main(){ int n,m=0,i,k=0; scanf("%d",&n); struct person a[n]; for(i=0;i<...原创 2020-03-07 23:49:12 · 135 阅读 · 0 评论 -
存在重复数组,纠正一些对typedef+struct的一些错误认识
此处,如果没有加 typedef ,可以用structarr_tag来定义变量,arr称为“tag”,即“标签”,实际上是一个临时名字,struct 关键字和arr_tag一起,构成了这个结构类型,不论是否有typedef,这个结构都存在。但是如果加上了typedef,typedef struct arr{ int val; int pos;};int cmp(...原创 2020-03-07 23:10:33 · 105 阅读 · 0 评论 -
soj 2198 prime+DijkstraDijkstra
soj2198primeTheislandnationofFlatopiaisperfectlyflat.Unfortunately,Flatopiahasnopublichighways.SothetrafficisdifficultinFlatopia.TheFlatopiangovernmentisawareofthisprob...原创 2020-03-03 22:45:15 · 158 阅读 · 0 评论 -
接触杨辉三角来理解leetcode中函数中各种参数的动态分配内存和返回
题中总共有三个值要返回 *returnSize **returnColumSizes **ret(要求的数组)*returnSize 为返回数组的行数 ,直接把行数赋值给*returnSize就可以了,比较容易理解 **returnSizes则要返回的是每一行的长度,说白了,就是返回一个数组,这个数组的每个元素是结果数组每一行对应的列宽,那怎么理解呢?因为要以指针的形式返回,首先要动态分...原创 2020-03-02 16:05:51 · 606 阅读 · 0 评论 -
取无符号短整型数中的奇数位、偶数位组成新的数字
这道题不难,才开始没看明白,还以为是取二进制的形式,后来搞明白,这道题主要学会两点itoa(n,a,10) n为整数int型,a为字符串名,10转换所基于的进制类型,还有字符串转换进制类型 atoi n=atoi(a) 怎么在函数中实现多参数返回呢?在这个题中应用了,之前是数组实现,return只能返回一个,现在可以在主函数设置指针,然后为指针分配空间,然后作为函数形参,在函数中进行...原创 2020-03-02 00:27:25 · 485 阅读 · 0 评论 -
二进制求和
题目:给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字1和0。哇塞,真的吐血了,dev出的来,leetcode一直报溢出,以前总是循环判断数组那出问题,很小心的都改了,还是错#include<stdio.h>#include<string.h>#include<stdlib.h>char * addBin...原创 2020-02-29 15:28:42 · 136 阅读 · 0 评论 -
最大子序和(简单+进阶)
总共4种方法,有贪心法、分治法和动态规划,还有一种最笨的,分治法主要是把问题分成小问题进行解决,再对小问题的和进行综合处理,贪心法和动态规划法相同简单 方法一:这个方法最愚蠢,用i,j当起始结束标志int maxSubArray(int* nums, int numsSize){ int i,j,s,max=nums[0]; for(i=0;i<numsSize;i++){ ...原创 2020-02-29 12:57:51 · 158 阅读 · 0 评论 -
kmp(C语言)
简单的模式匹配算法int strStr(char * haystack, char * needle){ int i=0,j=0; while(i<strlen(haystack)&&j<strlen(needle)){ if(haystack[i]==needle[j]){ i++; j++; } else{ i=i-j+1;...原创 2020-02-28 16:25:25 · 98 阅读 · 0 评论 -
第八章结构体-链表(c谭浩强)
有些小问题卡了半天,在代码中注释出来,之后复习到多注意#include<stdio.h>#include<stdlib.h>typedef struct LNode{ int data; LNode *next;};LNode *creat(){ LNode *head,*r,*s; head=NULL; r=s=(LNode *)malloc(si...原创 2020-02-25 20:48:20 · 247 阅读 · 0 评论