技术栈后端:thinkphp5.1前端:layui数据库:mysql依赖composerphp5.6mysql5.5步骤安装php依赖包composerinstall配置数据库,配置链接数据库名以及用户名密码/config/database.php创建数据库字符编码:utf8—UTF-8Unicode导入数据库脚本,脚本地位extend/database伪静态配置nginxlocation/{indexindex.htmindex.htmlindex.php;#访问路径的文件不存在则重写URL转交给ThinkPHP处理if(!-e$request_filename){rewrite^/(.*)$/index.php?s=$1last;break;}}apache项目自带apache静态化无需配置启动项目添加public为web根目录若为apache服务器则默认伪静态,nginx可自行配置伪静态
2019/2/25 5:16:20 43.59MB 源码
1
运用TensorFlow实现卷积神经网络的手写字符识别,可重新训练网络
2015/4/27 8:04:08 10.03MB python 卷积神经网络 手写字符识别
1
深层神经网络拥有更强特征表达能力的同时,也带来了优化难、训练成本高及梯度弥散等问题;参数数量的激增则导致模型过于臃肿,不利于其在挪动端及工业控制设备等算力弱、存储小的平台上的部署.针对这些问题,构建了一种融合空洞卷积和多尺度稀疏结构的轻量神经网络对图像进行特征提取,实现对带有彩色图形噪声且字符扭曲粘连严重的验证码图像的端到端识别.将包含100万张验证码图像的数据集按98:1:1的比例划分为训练集、验证集和测试集,逐批参与训练.实验结果表明,该网络在大大减少参数数量的同时,具有测试集上98.9%的识别成功率.
1
功能:系统基于QT集成开发环境,基于socket编程,实现了玩家对战、邀请好友等基本功能,数据存储以I/O操作存在本地文件等功能,以开发进度实现四个版本,字符版、图形界面版、人机对战版和嵌入式版本,详细内容见后图源码列表。
集成开发环境:QT基本言语:C/C++操作系统:Linux技术:socket网络编程
2016/5/17 4:31:08 1.02MB 五子棋游戏 CC++ 课程设计 毕业设计
1
01中景园电子0.96OLED显示屏原理图02中景园电子0.96OLED显示屏数据手册03中景园电子0.96OLED显示屏测试程序04中景园电子最新程序(显示点、线、圆、不同尺寸字符以及汉子滚动)05中景园电子取字模软件及操作说明08取字模软件09赠送高清0.96与1.3寸IPS彩色显示屏材料10中景园电子0.96寸OLED模组结构图中景园电子0.96寸OLED模块材料V3.020190228中景园电子0.96寸oled显示中文操作方法OLED反白显示技术材料.rarSPI接口arduino连接方式.rar中景园电子取字模软件及操作说明.zip关于七针0.96寸OLED使用IIC接口的说明.rar中景园电子0.96寸OLED使用文档新手必看V2.0.pdf中景园电子0.96寸OLED7pin-SPI规格书.pdf中景园电子0.96寸OLED操作指南.pdf中景园电子0.96寸oled显示中文操作方法.zip
2018/3/12 13:28:41 126.37MB OLED
1
Bandizip是一款完全免费的压缩解压软件,支持ZIP,7Z,RAR,ALZ,EGG,TAR,BH,LZH,GZ,BZ2,ISO,CAB,WIM,XZ,ARJ和Z后缀的压缩文档。
可制作exe格式自解压文件、支持unicode字符和批量分割压缩文件。
现在的网络虚实难辨,下载的压缩包,解压前你一定想知道里面有没有自己需要的文件。
这在以往,需要打开WINRAR之类的解压软件才能知晓,如今只需安装了BandiZip这款软件,通过右键菜单,便能预览其中的文件。
7之前没有广告,7版本加入了广告
2021/5/16 11:48:30 6.43MB zip bzip
1
支持csv格式千万级数据秒开大数据查询神器AkelPad是一款快捷免费且文件玲珑的文本编辑软件。
具有单窗口单页面和单窗口多页面两种模式,可编辑超过64k限制的文件。
支持Unicode字符。
支持系统已安装的任意代码页。
支持DOS/Windows和Unix换行格式。
可预览打开的文件,多次撤消,记忆搜索替换设置,支持插件等功能。
是一款不错的“记事本”替代工具。
2017/2/9 10:20:33 1.16MB AkelPad4.9.7 AkelPad 大数据
1
1.利用I/O中断,I0.0的上升沿触发中断,建立0号中断事件和与中断服务程序INT0的连接,在中断服务程序中使VB10中的值加1,经译码指令SEG译码后,送QB0输出,驱动LED显示0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。
每按动I0.0一次显示一个字符。
2.利用定时中断0,定时中断0的中断号为10,建立10号中断事件和与中断服务程序INT1的连接。
按下启动按钮I0.1后,将VB10清0,并调用中断服务程序INT1,10号中断事件中,SMB34的定时时间设定值为250ms,LED转换的时间为1s,用VB0作为中断次数计数器,在中断服务程序中使VB0中的值加1,然后用比较指令判断VB0能否等于设定值4,不相等则返回;
若相等,则将VB10的值加1,经译码指令SEG译码后,送QB0输出,驱动LED显示,同时VB0清0。
要求八段数码管循环显示0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,并循环不止。
用I0.2停止循环。
2015/6/12 23:02:38 2KB PLC程序
1
如果是A串的第i个字符和B串的第j个字符1.在A的第i个字符后插入一个字符B[j],成绩转化为计算A[i...lenA]和B[j+1...lenB]的距离2.删除A串的第i个字符,成绩转化为计算A[i+1...lenA]和B[j...lenB]的距离3.将A的第i个字符替换成B的第j个字符,成绩转化为计算A[i+1...lenA]和B[j+1...lenB]的距离。
于是替换操作的编辑距离就是d[i-1][j-1]+flag。
其中,当A[i]==B[j]时,flag=0,A[i]!=B[j],flag=1d[i-1][j]、d[i][j-1]、d[i-1][j-1]进行比较,其中最小的就是当前A和B的编辑距离
2017/11/8 22:03:24 993B 动态规划
1
LeetCodecpp最新中文题解.pdfLeetCodecpp最新中文题解.pdfLeetCodecpp最新中文题解.pdf目录3.4Addbinary615.1.5BinaryTreeLevelOr-3.5LongestPalindromicSubstring.62dertraversalil3.6RegularExpressionMatching665.1.6BinaryTreeZigzag3.7WildcardMatching67LevelOrdertraversal.963.8LongestCommonPrefix5.1.7RecoverBinarySearch3.9ValidNumber70Tree983.10Integertoroman725.1.8SameTree3.11RomantoInteger735.1.9SymmetricTree1003.12CountandSay745.1.10BalancedBinaryTree..1023.13Anagrams755.1.11FlattenBinaryTreeto3.14SimplifyPath76LinkedList1033.15LengthofLastWord775.1.12PopulatingNextRightPointersineachnodeii105第4章栈和队列7952二叉树的构建10641栈795.2.1ConstructBinaryTree4ValidParentheses79fromPreorderandIn4.1.2LongestvalidParenorderTraversa106theses805.2.2ConstructBinaryTree4.1.3LargestRectangleinfromInorderandposHistogram82torderTraversal1074.1.4Evaluatereversepol-53二叉查找树108ishnotation845.3.1UniqueBinarySearch4.2队列85Trees.1085.3.2UniqueBinarySearch第5章树86Treesli.1105.1二叉树的遍历865.3.3ValidateBinarySearch5.1.1BinaryTreePreorderTreeTraversal865.3.4ConvertSortedarrayto5.1.2BinaryTreeInorderBinarySearchTree...112Traversal885.3.5ConvertSortedListto5.1.3BinaryTreePostorderBinarySearchTree113Traversal9054二叉树的递归.1145.1.4BinaryTreeLevelOr5.4.1MinimumDepthofBidertraversal)2narylree115目录5.4.2MaximumDepthofBi8.3.,2重新实现nextpermunaryTree116tation1425.4.3PathSum11783.3递归.1435.44PathSumil1188.4PermutationsII1445.4.5BinaryTreeMaximum8.4.1nextpermutation...144PathSuum11984.2重新实现nextpermu5.4.6PopulatingNextRighttation144Pointersineachnode120843递归1445.4.7SumRoottoLeafnum8.5Combinations146bers2185.1递归1468.5.2迭代147第6章排序1238.6LetterCombinationsofaphone6.1MergeSortedArray123umber1476.2MergeTwoSortedLists12486.1递归1486.3MergekSortedLists124862迭代96.4InsertionSortList125第9章广度优先搜索1506.5Sortlist1269.1WordLadder1506.6FirstMissingPositive1279.2WordLadderil1546.7SortColors1289.3Surroundedregions162第7章查找94小结16413194.l适用场景1647.1Searchforarange131942思考的步骤7.2SearchInsertPosition.13294.3代码模板1657.3Searcha2DMatrix133第10章深度优先搜索173第8章暴力枚举法13510.1PalindromePartitioning1738.1Subsets13510.2UniquePaths1768.1.1递归1350.2.1深搜1768.1.2迭代.1371022备忘录法.1768.2Subsetsil13810.23动规177821递归13810.24数学公式1788.2.2迭代.14110.3UniquePathsIl1798.3Permutations14210.3.1备忘录法1798.3.1nextpermutation14210.3.2动规.180目录10.4N-Queens1813.4Maximalrectangle21310.5N-QueensII18413.5BestTimetoBuyandSellStock10.6Restoreipaddresses186.21410.7CombinationSum18813.6InterleavingString21510.8CombinationSumIl18913.7ScrambleString21710.9GenerateParentheses.19013.8MinimumPathSum.22210.10Sudokusolver19213.9EditDistance22410.11WordSearch.19313.10DecodeWays.22610.12小结19513.11Distinctsub22710.12.1适用场景19513.12WordBreak22810.122思考的步骤1951313WordBreakil2300.12.3代码模板197第14章图23210.12.4深搜与回溯法的区別.19714.1CloneGraph23210.12.5深搜与递归的区别..197第15章细节实现题235第11章分治法19915.1ReverseInteger2351.1Pow(x,n)19915.2PalindromeNumber.23611.2Sqrt(x)20015.3InsertInterval237第12章贪心法20115.4MergeIntervals23812.1Jumpgame20115.5MinimumWindowSubstring23912.2JumpgameII15.6MultiplyStrings24112.3BestTimetobuyandSellstock20415.7SubstringwithConcatenation12.4BestTimetobuyandsellstockl205ofallwords24412.5LongestSubstringWithoutre15.8Pascal,sTriangle245peatingCharacters20615.9PascalsTriangleIl24612.6ContainerwithMostWater..20715.10SpiralMatrix24715.11SpiralmatrixII248第13章动态规划20915.12ZigZagConversion25013.1Triangle20915.13DivideTwoIntegers25113.2MaximumSubarray15.14TextJustification25313.3PalindromePartitioningII1215.15MaxPointsonaline255目录第1章编程技巧在判断两个浮点数a和b是否相等时,不要用a==b,应该判断二者之差的绝对值fabs(a-b)是否小于某个阈值,例如1e-9。
判断一个整数是否是为奇数,用x%2!=0,不要用x%2=1,因为ⅹ可能是负用char的值作为数组下标(例如,统计字符串中每个字符岀现的次数),要考虑到char可能是负数。
有的人考虑到了,先强制转型为unsignedint再用作下标,这仍然是错的。
正确的做法是,先强制转型为unsignedchar,再用作下标。
这涉及C十整型提升的规则,就不详述了。
以下是关于STL使用技巧的,很多条款来自《EffectiveSTL》这本书。
vector和string优先于动态分配的数组首先,在功能上,由于vector能够保证连续内存,因此一旦分配了后,它的功能跟原始数组相当;其次,如果用new,意味着你要确保后面进行孓delete,一旦忘记了,就会出现BUG,且这样需要都写一行delete,代码不够短再次,声明多维数组的话,只能一个一个new,例如int**ary=newint*[row_num];for(inti=0:i<rownum;++1)ary[i]newint[col_num]用vector的话一行代码搞定vector<vector<int>>ary(row_num,vector<int>(col_num,0))使用reserve来避免不必要的重新分配第2章线性表这类题目考察线性表的操作,例如,数组,单链表,双向链表等。
2数组2.1.1RemoveDuplicatesfromSortedarray描述Givenasortedarray,removetheduplicatesinplacesuchthateachelementappearonlyonceandreturnthenewlengthDonotallocateextraspaceforanotherarray,youmustdothisinplacewithconstantmemoryForexample,GiveninputarrayA=[1,1,2Yourfunctionshouldreturnlength=2,andaisnow[1,2]分析无代码1/LeetCode,RemoveDuplicatesfromSortedArray//时间复杂度0(n),空间复杂度0(1)classSolutiontublicintremoveDuplicates(vector<int>&nums)tif(numsemptyo)return0;intindex=ofor(inti=1:inumssize:1++iif(nums[index]!nums[i])nums[++index]=nums[i]returnindex12.1数组代码2//LeetCode,RemoveDuplicatesfromSortedArray/使用STL,时间复杂度0(n),空间复杂度0(1)classSolutionipublicintremoveDuplicates(vector<int>&nums)treturndistance(numsbegin(),unique(numsbegin(),numsend())代码3/LeetCode,RemoveDuplicatesfromSortedArray/使用STL,时间复杂度0(n),空间复杂度0(1)lassSolutionfublicintremoveDuplicates(vector<int>&nums)treturndistance(numsbegin(,removeDuplicates(numsbegin(,numsend(),numsbegintemplate<typenameInIt,typenameoutit>OutItremoveDuplicates(InItfirst,InItlast,OutItoutput)thile(firstlast)i*output++=*firstfirstupper_bound(first,last,*firstreturnoutput相关题目RemoveDuplicatesfromSortedArrayI,见§2.1.22.1.2RemoveDuplicatesfromSortedArrayII描述Followupfor"RemoveDuplicates"Whatifduplicatesareallowedatmosttwice?Forexample,Givensortedarraya=[1,1,1,2,2,3]Yourfunctionshouldreturnlength=5,andAisnow[1,1,2,2,3分析加一个变量记录一下元素出现的次数即可。
这题因为是已经排序的数组,所以一个变量即可解决。
如果是没有排序的数组,则需要引入一个hashmap来记录出现次数。
4第2章线性表代码1//LeetCode,RemoveDuplicatesfromSortedArrayII//时间复杂度0(n),空间复杂度0(1)//qauthorhex108(https://github.com/hex108)classSolutiontublicintremoveDuplicates(vector<int>&nums)tif(numssize(<=2)returnnumssizeintindex=2for(inti=2:inumssize(:i++)ff(nums[i]!numslindex-2]nums[index++]=nums[i]returnindex;代码2下面是一个更简洁的版本。
上面的代码略长,不过扩展性好一些,例如将occur<2改为occur3,就变成了允许重复最多3次。
//LeetCode,RemoveDuplicatesfromSortedArrayII7/@author虞航仲(http://weibo.com/u/1666779725)//时间复杂度0(n),空间复杂度0(1)lassSolutionfpublicintremoveDuplicates(vector<int>&nums)tconstintn=numssizeintindex=0:for(inti=0:i<n;++i)if(i>0&&i<n-1&nums[i]=nums[i-1]&nums[i]=nums[i1])continue;nums[index++]=nums[i]returnindex;相关题目RemoveDuplicatesfromSortedArray,见§2.1.1
2019/5/20 21:34:34 866KB why
1
共 981 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡