数据结构->线性表->顺序表基本代码

#include <stdio.h>#include <stdlib.h>#include <assert.h>#pragma warning(disable:4996)typedef int SLDatatype;typedef struct SeqList{ SLDatatype *a; int size; int capacity;}SeqList;void SeqListInit(SeqList *ps1){ assert
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

最简单的动态规划——青蛙跳台阶问题和青蛙变态跳台阶问题

1.青蛙跳台阶问题:有一个台阶有N阶,青蛙可以一次跳一阶,也可以一次跳两阶,那么跳到第N阶总共有多少种跳法?假设跳到第N阶的跳法为f(N)那么可由规律得到:f(N) = f(N - 1) + f(N - 2);…f(1)=1f(2)=2这与求斐波那契数列相似,这样可以套用求斐波那契数的代码而要注意的是青蛙跳台阶问题里,f(1)=1,f(2)=2;要将部分数值改变,才可套用此代码long long Fibnacci(size_t N){ if (N < 2) {
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

LeetCode——合并两个有序数组(归并排序变形实例)

归并排序是将两个排好序的数组合并到一个新的数组中去,而此题是将后一个小数组归并到前面一个大数组中去,仅此差异。void merge(int *nums1, int nums1Size, int m, int *nums2, int nums2Size, int n){ //判断数组是否为空 if (nums1Size == NULL || nums2Size == NULL) { return; } int k = nums1Size - 1;//k为nums1数组的最
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

素数求法的四种方法(逐次优化)

/*思路:素数:即质数,除了1和自己之外,再没有其他的约数,则该数据为素数,具体方式如下*/ //方法一:试除法int main(){ int i = 0; int count = 0; // 外层循环用来获取100~200之间的所有数据,100肯定不是素数,因此i从101开始 for(i=101; i<=200; i++) { //判断i是否为素数:用[2, i)之间的每个数据去被i除,只要有一个可以被整除,则不是素数 int j = 0; fo
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

史上最易懂的快速排序源代码及截图

#include <stdio.h>#pragma warning(disable:4996)void quicksort(int *arr, int left, int right){ //要有递归的控制判断 if (left>right) { return; } //否则的话,如递归所有控件路径,函数将导致运行时堆栈溢出 int l = left; int r = right; int key = arr[left];//找第一个数为基准数
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

LeetCode——数组形式的整数加法---源代码

#include <stdio.h>#include <malloc.h>#pragma warning(disable:4996)int *addToArrayForm(int *A, int ASize, int K, int* returnSize){ int num = K; int size = 0; while (num) { size++; num /= 10; } int n = size > ASize ? size+1 : AS
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

【信息安全】-密码学

加解密算法1.对称加密对称加密模型中,加密解密使用同一个秘钥,类别有流密码和分组密码。1.流密码:一次一密,逐比特加密 RC4:秘钥调度算法+伪随机密码生成算法 2.分组密码:对明文进行分组加密 DES:循环 16 轮的 Feistel 结构, 明文分组长度和初始密钥长度都是 64 位 AES:字节代换+行位移+列混合+轮秘钥加 Diffle-Hellman秘钥交换协议:基于对称加密算法,在互联网上为发送方和接收方协商一个秘钥。 对称加密的弊端:秘钥分发繁杂,花费的.
分类: 企业开发 发布时间: 03-30 10:15 阅读次数: 0

通讯录源代码(1)(包含文件操作——文件写入和读取)(文本文件)

//contact.h#pragma once#pragma warning(disable:4996)#include <stdlib.h>#include <stdio.h>#include <Windows.h>#include <assert.h>#include <malloc.h>#include <string.h>#include <errno.h>#define NAME_MAX
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

LeetCode——(两种思路)将字符串中的空格替换为%20

#include <stdio.h>#include <string.h>#pragma warning(disable:4996)思路1:遇到空格,就把后面的字符往后挪动两个位置。问题:效率不高,时间复杂度O(N^2),所以不选用思路2:先遍历一遍计算出有多少个空格,再从前往后挪数据,把每个字符一步挪到位,每个字符挪 spacenum*2 位.遇到空格以后填%20,然后spacenum--;时间复杂度为O(N);选用思路2代码如下:void .
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

完整版通讯录源代码(2)——最全的功能(二进制文件写入与读取)

// contact.h#ifndef _CONTACT_H_#define _CONTACT_H_#pragma warning(disable:4996)#include <stdio.h>#include <malloc.h>#include <stdlib.h>#include <assert.h>#include <string.h>//person 内部元素的大小#define NAME_SIZE 32#d
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

Elasticsearch学习(一):Linux下安装并运行

Elasticsearch学习(一):Linux下安装ubuntu(Linux)下载安装jdk8在终端使用以下命令下载安装sudo apt-get install default-jdk下载安装elasticsearch依次使用以下命令进行下载安装由于之后安装插件的版本问题,博主这里下载的是6.8.15版本,将下面命令的7.4.2改为6.8.15即可wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearc
分类: 企业开发 发布时间: 03-30 10:15 阅读次数: 0

吴恩达机器学习课程作业(一)基于python实现 详细解析

@单变量线性回归前言斯坦福大学吴恩达老师的机器学习课程几乎是每位热爱人工智能领域同学的必修课。网上虽然有许多基于python实现的代码,但大多使用python交互模式解释器ipython实例讲解。本人基于自己的理解采用pycharm提供源代码及个人理解,部分代码可能参考他人代码部分,如有侵权请私信我一、问题探讨单变量线性回归算法需要根据城市人口数量,预测开小吃店的利润数据可以从Coursera中获得,第一列是城市人口数量,第二列是该城市小吃店利润。二、代码解析1.引入库代码如下(示例):i
分类: 企业开发 发布时间: 03-30 10:15 阅读次数: 0

PyQt5入门(二十五)QSS(下)三种设置背景色和背景图片的方式

苟有恒,何必三更眠五更起;最无益,莫过一日曝十日寒
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

openCV保存图片之后是一张黑色图片解决办法

保存是用的imwrite函数,我用dtype打印了一下保存前后的图片的数据类型,保存之前是float64,而保存之后则是uint8,打印图片一看像素点都是小数,所以是黑色图片。想要正常显示,只需要将图片类型用.astype转换回去就好了!参考这篇blog...
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

“腹有诗书气自华”架构师基础必备,掌握这些,驰骋一线大厂不是梦,抓紧收藏!!!

“古来青史谁不见,今见功名胜古人。”Java 激荡三十年,我们一起来回顾 Java 开发的历程。总结前人智慧,引领前进之路,本文作为 Java 全栈入门第一课,全栈工程师、Java 后端工程师面试第一课,希望能有“等闲识得东风面,万紫千红总是春”的效果。
分类: 企业开发 发布时间: 03-30 10:15 阅读次数: 0

numpy的sum函数的axis和keepdim参数详解

一.axisaxis就是指定轴。三维数组可看作元素是二维数组的一维数组,二维数组可看作元素是一维数组的一维数组 。(这么理解就舒服了!)例:axis=2就是三维数组对最里面那一层即每个一维数组内部进行求和。axis=0就是对最外面那一层的元素之间作和。例子戳这里二.keepdim可以理解为'keepdims = True'参数是为了保持结果的维度与原始array相同,即keep dimension 保持维度.import numpy as npb=np.ar.
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

2021.3.28 字节跳动笔试 - 第四场

比昨天米哈游简单得多,一共四道题虽然字节不给用本地IDE吧,但是其实牛客的IDE也还行(?)前两题DP,第三题二分,最后一题组合数学。一、 今天有 nnn 个会议,每个会议有一个起始时间 LLL 和一个终止时间 RRR ,参加一个会议就必须要从头参加到底,不能中途参加别的会议。问今天最多能参加多少个会议。( n≤100n \le 100n≤100 ,0≤L≤240 \le L \le 240≤L≤24)思路: 巧了,这就跟我校赛出的题的思路一样,而且简单得多。当时那题的题解:因为会议数很少,只
分类: 企业开发 发布时间: 03-30 10:15 阅读次数: 0

图像边缘定义及一二阶导数的理解 & 梯度

一.定义图像的大部分信息都存在于图像的边缘中,主要表现为图像局部特征的不连续性,即图像中灰度变化比较剧烈的地方。因此,我们把边缘定义为图像中灰度发生急剧变化的区域边界。根据灰度变化的剧烈程度,通常边缘划分为阶跃状和屋顶状两种类型。阶跃边缘两边的灰度值变化明显,而屋顶边缘位于灰度值增加与减少的交界处。二.导数理解那么,对阶跃边缘和屋顶边缘分别求取一阶、二阶导数就可以表示边缘点的变化。因此,对于一个阶跃边缘点,其灰度变化曲线的一阶导数在该点达到极大值,二阶导数在该点与零交叉;对于一个屋顶边缘点,其灰
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

bug解决:QFileDialog.getSaveFileName点击取消(关闭选取窗口)后整个程序退出

源代码: def selectImage(self): ''' 功能:选取需要增强的夜间图像,即从电脑中选取图像并显示在label上 ''' #参数三是默认路径(自己随便设),参数四是过滤哪些文件,比如下面就是只显示jpg或者png文件 #fname,a=QFileDialog.getOpenFileName(self,'打开文件','.','图像文件(*.jpg *.png)') self.fnam
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0

openCV对识别出的目标对象标号(putText函数)

示例代码:就像下面这段代码,直接利用cv.putText函数即可,注意数字需要转化成字符型!# 提取轮廓 # findContours函数会修改原始图像 cnts = cv.findContours(cannyImg.copy(), mode=cv.RETR_EXTERNAL, method=cv.CHAIN_APPROX_SIMPLE) # print(cnts) cnts = imutils.grab_contours(cnts) numCnts =
分类: 其他 发布时间: 03-30 10:15 阅读次数: 0