每日编程练习
Aaron~~~
这个作者很懒,什么都没留下…
展开
-
LC 19. 删除链表的倒数第N个结点
19. Remove Nth Node From End of List方法一:双指针算法思想:我们可以用两个指针,p , q,分别指向最后一个结点,和指向需要被删除结点的前驱结点。我们先让p指向第n个结点,之后p,q一起向后同步移动,间隔不变。直到p到达最后一个结点。这个时候q为我们需要删除结点的前驱结点。// C语言版本/** * Definition for singly-linked list. * struct ListNode { * int val; * s原创 2021-09-19 02:01:37 · 178 阅读 · 1 评论 -
2021.4.13(801/802/804)
2021.4.13801.使序列递增的最小交换次数int minSwap(int *A, int ASize, int *B, int BSize){ int i; int dp[ASize][ASize]; for (int i = 0; i < ASize; i++) { for (int j = 0; j < BSize; j++) { dp[i][j] = 0; } }原创 2021-04-13 22:00:35 · 111 阅读 · 0 评论 -
八皇后问题
小节:处理好限制条件。这里将二维限制条件,变成了一维限制条件,自己要学会关于回溯关于打印。如果将一维的转化为二维 代码伪代码genrate(0);void genrate(int n){ int col; for(col=0;col<8;col++) { if(不冲突) { 放置,并宣布占领; if(n<7)原创 2020-11-23 17:17:16 · 393 阅读 · 1 评论 -
Leetcode: 392. 判断子序列
bool isSubsequence(char *s, char *t){ int i, j, k = 0; int flag = 0; //保证每次都是从已经找到的字符后面开始寻找 int temp = 0; for (i = 0; s[i] != '\0'; i++) { for (j = k; t[j] != '\0'; j++) { if (s[i] == t[j]) {原创 2020-07-27 20:59:39 · 104 阅读 · 0 评论 -
02 学生成绩表(C语言)
题目:某班期末考试科目为数学(MT)、英语(EN)和物理(PH),有最多不超过40人参加考试。请编程计算:(1)每个学生的总分和平均分;(2)每门课程的总分和平均分。//二维数组输入学生的成绩#include <stdio.h>#define STUD_N 40 //最多学生人数#define COURSE_N 3 //考试科目数void ReadScore(int score[][COURSE_N], long num[], int n);void AverforStud(in原创 2020-07-19 15:20:14 · 4107 阅读 · 0 评论 -
01 每日编程练习(C语言)
题目:随机生成的20个整数,把其中的素数输入到文件“out.txt”中,要求在文件“out.txt”中每个数用空格隔开,一行放5个数将问题进行拆解首先是要随机生成20个整数自定义一个函数,随机生成,存放到数组里面。再是把其中的素数输入到文件中,调用FILE。在文件中每个数用空格隔开这个在输入进去的时候可以进行判断。每五个一行每次循环放进去的时候,到达五个数的时候,\n。代码:#include <stdio.h>#include <stdlib.h>#includ原创 2020-07-17 01:17:51 · 275 阅读 · 0 评论