char

《动手学深度学习》循环神经网络

我是研究僧i 提交于 2020-02-19 04:07:07
pytorch版循环神经网络实现 import torch import torch . nn as nn import time import math import sys def load_data_jay_lyrics ( ) : """加载周杰伦歌词数据集""" with open ( '/Users/nick/Documents/dataset/jaychou_lyrics.txt' , 'r' ) as f : corpus_chars = f . read ( ) corpus_chars = corpus_chars . replace ( '\n' , ' ' ) . replace ( '\r' , ' ' ) corpus_chars = corpus_chars [ 0 : 10000 ] idx_to_char = list ( set ( corpus_chars ) ) char_to_idx = dict ( [ ( char , i ) for i , char in enumerate ( idx_to_char ) ] ) vocab_size = len ( char_to_idx ) corpus_indices = [ char_to_idx [ char ] for char in corpus_chars ] return

2020/2/18-C语言复习-字符串与指针

无人久伴 提交于 2020-02-18 21:27:03
C语言复习-字符串与指针 例一: 【字符串处理 去除C代码中的注释】      C/C++代码中有两种注释,/* */和//。编译器编译预处理时会先移除注释。就是把/*和*/之间的部分去掉,把//以及之后的部分删掉。这里约定,如果出现了/* AAAA /* BBBB */的情况,也就是/**/中出现了/*,那么第二个/*是不当作注释起始的。编写函数void removeComment(char *str)。    分析:对于字符串”int c=4,/*c累计量*/ a=3;/*变量*/ // a初值为3 ”先用 strstr函数 在str中确认”/*” 是否出现过,是则再确认”*/” 是否出现过,是则 把str中自”*/”出现位置后2个字符起始的字符串复制到str中”/*”开始的位置,覆盖掉注释部分。 循环查找直到找不到”/*”为止;再用strstr在str中确认”//” 是否出现过,是则 把出现”//”的位置上置为’\0’ 。 #include <stdio.h> #include <string.h> void removeComment(char *str) { char *p=str, *q; while ((p=strstr(p, "/*")) != NULL) { q=strstr(p, "*/"); if (q != NULL) strcpy(p, q+2); } p

(六)OpenCV视频分析与对象跟踪_08_扩展模块中的跟踪方法介绍

感情迁移 提交于 2020-02-18 16:55:28
KCF核相关滤波(阉割版) BOOSTING(机器学习)、MIL、MEDIANFLOW、TLD # include <opencv2/opencv.hpp> # include <iostream> # include <opencv2/tracking.hpp> //KCF核相关滤波 using namespace cv ; using namespace std ; int main ( int argc , char * * argv ) { VideoCapture capture ; capture . open ( "../path.avi" ) ; //capture.open(0); if ( ! capture . isOpened ( ) ) { cout << "could not load video..." << endl ; return - 1 ; } namedWindow ( "Video_demo" , WINDOW_AUTOSIZE ) ; Mat frame ; capture . read ( frame ) ; //读取第一帧 Ptr < TrackerKCF > tracker = TrackerKCF :: create ( ) ; //KCF跟踪//一种阉割版跟踪算法 Rect2d ROI = selectROI ( "Video

扫雷游戏

谁都会走 提交于 2020-02-18 03:53:42
game.h #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #include<time.h> #define ROW 9 #define COL 9 #define ROWS ROW+2 #define COLS COL+2 #define EASY_COUNT 10 void InitBoard(char board[ROWS][COLS], int rows, int cols, char set); void DisplayBoard(char board[ROWS][COLS], int row, int col); void SetMine(char mine[ROWS][COLS], int row, int col); void FindMine(char mine[ROWS][COLS], char show[ROWS][COLS], int row, int col); game.c #define _CRT_SECURE_NO_WARNINGS 1 #include"game.h" #include<stdio.h> void InitBoard(char board[ROWS][COLS], int rows, int cols, char set) { int i

一周学习总结1_BUUCTF_re

拥有回忆 提交于 2020-02-18 01:15:23
SimpleRev 拖进IDA,先得到了两个字符串text和key,但刚开始没有 注意字节序 的问题,正解应为 text = ‘killshadow’,key = ‘ADSFKNDCLS’ 再接着是对key的一段操作,看到+32后直接反应是大写改为小写 此时text = ‘killshadow’,key = ‘adsfkndcls’ 之后的这段代码得到的就是flag了,刚开始尝试用python编译,但对字符的处理不太到位,无奈换回C++ # include <iostream> using namespace std ; int main ( ) { char text [ 10 ] = { 'k' , 'i' , 'l' , 'l' , 's' , 'h' , 'a' , 'd' , 'a' , 'w' } ; char key [ 10 ] = { 'a' , 'd' , 's' , 'f' , 'k' , 'n' , 'd' , 'c' , 'l' , 's' } ; int v3 = 0 ; int v5 = 10 ; char flag [ 10 ] ; for ( int i = 0 ; i < 10 ; i ++ ) { for ( char j = 'A' ; j <= 'Z' ; j ++ ) { char temp ; temp = ( j - 39 - key

STL详细介绍(更新中~~~)

雨燕双飞 提交于 2020-02-17 23:16:27
目录 string string的常见构造函数 string与char *(或const char*)之间的转换 string 转化为const char* const char* 转化为string string 转化为 char* char* 转化为string find函数 string 帮助链接: https://www.jianshu.com/p/497843e403b4 string的常见构造函数 //通过const char * 初始化 string s1 = "aaaa"; //构造函数初始化 string s2("bbbbb"); //通过拷贝构造函数来初始化对象s3 string s3 = s2; //用10个'a'字符来初始化字符串 string s4(10, 'a'); string与char *(或const char*)之间的转换 string 转化为const char* string str("aaaaaaa"); const char *s = str.c_str(); /*str.c_str()返回的应该是const char* 类型*/ const char* 转化为string const char *p1 = "123345"; string str1 = p1; /*直接拷贝*/ //或者这样 string str2(p1);

WinCE平台下BMP转JPG代码备份2

风格不统一 提交于 2020-02-17 14:31:16
1 /********************************************************************************************************* 2 ** Function name: epcCamGetRgbFrame 3 ** Descriptions: 本函数用于获取RGB通道的图像的数据缓存区地址 4 ** input parameters: prAddInfo 存放获取的地址,注意访问该地址的图像数据时候使用SetKMode(TRUE) 5 ** output parameters: 无 6 ** Returned value: TRUE:成功;FALSE:失败 7 *********************************************************************************************************/ 8 9 10 11 12 13 EpcsCam::EpcsCam(void)14 {15 hDLL=LoadLibrary(CString("\\FlashDisk2\\epcCameraLib.dll"));//加载动态链接库MyDll.dll文件;16 17 18 19 }20 21 EpcsCam::~EpcsCam

WinCE平台下BMP转JPG代码备份3

安稳与你 提交于 2020-02-17 14:30:15
1 //带参数的保存位图函数 2 BOOL FileOperate::bmpSaveImage(PTSTR pstrFileName, BITMAPFILEHEADER *pbmfh) 3 { 4 BOOL bSuccess ; 5 DWORD dwBytesWritten ; 6 HANDLE hFile; 7 8 hFile = CreateFile ( pstrFileName, GENERIC_WRITE, 0, NULL, 9 CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL) ; 10 11 if (hFile == INVALID_HANDLE_VALUE) { 12 return FALSE ; 13 } 14 15 bSuccess = WriteFile (hFile, pbmfh, pbmfh->bfSize, &dwBytesWritten, NULL); 16 17 CloseHandle (hFile) ; 18 19 if (!bSuccess || (dwBytesWritten != pbmfh->bfSize)) { 20 DeleteFile (pstrFileName) ; 21 return FALSE ; 22 } 23 return TRUE ; 24 } 25 26 //**************

(一) 编程常用数据类型

∥☆過路亽.° 提交于 2020-02-17 10:29:58
1.整数 这是一种整数型数据变量,在各种语言中都有广泛的应用,存储方式为二进制补码。一般长度为四个字节。根据具体数据的取值范围,还可分为长整型long(4byte),整型int(4byte),短整型short(2byte)等。根据有无符号有signed int, unsigned int。 整形的计算方法有数学运算与逻辑运算,其中值得一提的是一些语言中(如C语言),当你定义了某变量数据类型为整型后,若赋值的是非整数类型,计算机会自动转为整数类型存储,但在不用定义变量的python中则不会有这种问题。 作为二进制补码形式存储的整型可进行左移,右移,与,或,非,与或,或非等运算操作。 左移里一个比较特殊的情况是当左移的位数超过该数值类型的最大位数时,编译器会用左移的位数去模类型的最大位数,然后按余数进行移位。当最左边为符号位时,左移显然会形成数据的溢出。 相同情况下,右移不会改变符号位。 实际应用中,可用左移右移作快速的乘除运算。 2.浮点数 也是一种非常常用的数据类型。根据长度不同可分为float(4byte),double(8byte),long double(8byte),为浮点形式存储。 涉及的计算为有小数的数学运算与逻辑运算。 3.字符 char 占用一个字节空间,存储方式为二进制补码,也可分为signed char 和 unsigned char

滑动窗口算法技巧

冷暖自知 提交于 2020-02-17 10:28:26
本文详解「滑动窗口」这种高级双指针技巧的算法框架,带你秒杀几道高难度的子字符串匹配问题。 LeetCode 上至少有 9 道题目可以用此方法高效解决。但是有几道是 VIP 题目,有几道题目虽不难但太复杂,所以本文只选择点赞最高,较为经典的,最能够讲明白的三道题来讲解。第一题为了让读者掌握算法模板,篇幅相对长,后两题就基本秒杀了。 本文代码为 C++ 实现,不会用到什么编程方面的奇技淫巧,但是还是简单介绍一下一些用到的数据结构,以免有的读者因为语言的细节问题阻碍对算法思想的理解: unordered_map 就是哈希表(字典),它的一个方法 count(key) 相当于 containsKey(key) 可以判断键 key 是否存在。 可以使用方括号访问键对应的值 map[key]。需要注意的是,如果该 key 不存在,C++ 会自动创建这个 key,并把 map[key] 赋值为 0。 所以代码中多次出现的 map[key]++ 相当于 Java 的 map.put(key, map.getOrDefault(key, 0) + 1) 。 本文大部分代码都是图片形式,可以点开放大,更重要的是可以左右滑动方便对比代码。下面进入正题。 一、最小覆盖子串 题目不难理解,就是说要在 S(source) 中找到包含 T(target) 中全部字母的一个子串,顺序无所谓