首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

5秒用Java一个快速排序算法?这个在行

这段代码中的主要函数包括:1、quickSort(int[ ] arr): 这是快速排序的入口函数,它接受一个整数数组作为参数,并对它进行排序。...如果输入的数组为空或者只包含一个元素,这个函数就会直接返回。2、sort(int[ ] arr, int low, int high): 这是一个递归函数,用于对数组的子区间进行排序。...在main函数中,创建了一个待排序的数组,然后调用quickSort函数对其进行排序,最后打印排序后的数组。如果想知道排序后的结果是什么,你可以运行这段代码并查看控制台输出。...以上就是通过FuncGPT(慧函数)用Java一个快速排序算法的基本流程。...我们将以上代码放到可以媲美ChatGPT—4的文心一言中,得到的评价是:这个Java代码实现了一个结构清晰、易于理解和使用的快速排序算法(详情见截图)。

19910

发现了一个不用代码的 IDEA !!!

不想这种业务代码了 大家好,是小浩。 工作写了这么多年的代码,若说乐趣, 除了自己啃源码的时候让人着迷,更多时候其实都是码业务逻辑。...为了探究该平台是不是像他们说的那么牛x,于是搞了一个测试账户。...而这个飞算全自动软件工程平台,通过可视化自动生成微服务的方式,基本告别了传统开发代码。同时也降低了开发、测试、运维的成本,避免了各个环节的出错几率。...需要测试人员介入,需要熟悉代码 维护成本 上手程度低 需要维护额外的代码 业务场景推荐 适合可以抽象出大量业务逻辑的场景,比如金融业务就很典型,涉及大量的逻辑判断、条件循环,业务流程一目了然。...可以支持定制化较强的业务场景,比如你要开发个京东或者抖音,肯定自己代码适合。 个人觉得该平台还是很 nice 的,这种低 code 平台也应该是一种趋势。未来也一定会被更多的企业所采纳。

41720
您找到你想要的搜索结果了吗?
是的
没有找到

这个人不懂什么CPU,于是代码模拟出了一个

示例程序 这是一个相当整洁的小东西,CPU 代码被实现为一个开闭的门,但它奏效了,已经进行了测试,以此证明它能够运行。...但是,了解到了其他人很多年前已经解决了的问题,并认为自己的这项工作更好。 为什么要做这个?...在这个过程中,记得 Gameboy CPU 有一个堆栈指针寄存器,这样你就可以推送和弹出状态。不幸的是,这台电脑没有这么奢侈,所以我主要是在定制的基础上对内存里的东西进行移进移出操作。...无论如何,最终编写出了四个程序,其中多数程序使用一些共享代码来绘制字体、获取键盘输入等。虽然与操作系统还有一定的距离,但它确实让意识到一个简单的操作系统也可能提供一些服务。...虽然做的这个 CPU 很简单,距离电脑里的 CPU 还很远,但通过这个项目学到了很多,: 位元如何在使用总线的所有组件之间移动 一个简单的 ALU 是如何工作的 一个简单的 Fetch-Decode-Execute

89520

代码一个组件掌控整个场景的光影效果!免费开源

为了解决这个问题,专门编写了一个QuicEnv组件,只需要将组件挂载到任意节点,就能对整场景的环境、光照、阴影进行控制! 有这么牛逼的么???...以设置阴影为例 通过最前面的视频你可以看出,一般美术或研发同学,在调试场景效果的时候会有多少操作?...哈哈,现在可以对这些说886......看下面这个自用的QuicEnv组件效果! ‍ ‍已经把常用的场景光照、颜色和阴影的设置功能全部暴露在面板,你只需要通过一个面板能就在编辑器进行开关。...支持滑动设置主光源的亮度,以及 x、y、z 的方向,见下图所示:‍‍ 一键配置阴影 组件提供有 Shadow、Skybox、Fog、Model 四个标签页,如果你要开启模型阴影,不用到每一个模型上去打开阴影开关了...是孙二喵,一起喵喵喵!今天的分享就到这里!如果本文或的组件脚本对你有用,记得点个赞哦!

46420

2年目睹40次删库场景决定给蘑菇一个备份脚本

设置密钥 为了防止蘑菇重蹈覆辙,陌溪决定给蘑菇博客做一个定时备份功能 至于备份的数据存哪里呢?开始想到的是通过邮件发送到自己的邮箱 突然想想这个数据库文件可能比较大,最后可能也不给上传。。...ssh -T 选项的意思为,不分配终端。 当你在使用 ssh 协议连接到自己或者其他服务器时,本地终端会显示命令提示符,你可以在上面操作输入命令 Is 等。...git config --global user.name "陌溪" git config --global user.email "1595833114@qq.com" 下载脚本 然后开始下载陌溪的的备份文件...配置执行权限 chmod +x mysqlbackup.sh chmod +x pushGitee.sh 因为蘑菇的 mysql 是运行在 docker 容器中的,所以我们需要把 mysqlBak 这个目录挂载到...gitee.com:moxi159753/mogu-bak.git 完事后,执行下面的命令,即可开始进行数据库备份了,同时推送到我们的 Gitee 上 sh pushGitee.sh pushGitee.sh 代码如下

71420

只因少一个判空,代码上线后炸了!

代码炸了 前一段时间,项目紧急迭代,临时加入了一个新功能:用户通过浏览器在系统界面上操作,然后Java后台代码做一些数据的查询、计算和整合的工作,并对第三方提供了操作接口。...举例一种情况: 为了获取:省(Province)→市(Ctiy)→区(District)→街道(Street)→道路名(Name) 作为一个“严谨且良心”的后端开发工程师,如果手动地进行空指针保护,我们难免会这样...;反之则直接返回上一步中的单例 Optional包装对象 orElse(xxx ):很好理解,在上面某一个步骤的值转换终止时进行调用,给出一个最终的默认值 当然实际代码中倒很少有这种极端情况,不过普通的...for( User user : userList ) { // ... // 对user对象进行操作 // ... } } 如果用 Optional接口进行改造,可以为...getScore()这个函数的返回值的特殊性(有可能为 null),这样一个警示一定会很大几率上帮助调用者规避 null指针异常。

90120

自己一个分页控件(源码和演示代码)PostBack分页版 for vs2003、SQL Server

当然这里只是打个比方,并没有按照三层的规范来写这个分页控件,的目的只是想少写点代码。...4、内部代码比较混乱,05年底的,一直想整理,但是都没有开始整理,只是做了小的升级和修改bug。...Response.Write(ts.Seconds + "秒");             Response.Write(ts.Milliseconds  + "毫秒");              } 六、分页控件源代码和演示代码下载...int类型的,所以在 第一种算法的时候需要设置一个属性  myPage.SqlOrderColumnKind = "int";        通过这个属性来修改上面的SQL语句。  ...第二种算法的SQL语句  对于这种算法你可能会说,在显示最后一页的时候有问题,这个也发现了,并且在分页控件里面对最后一页作了修改,已经修证了这个bug。

99050

别@了,一个代码的,哪知道哪家是不正规的,Python爬取美团店铺数据,并可视化展示数据

前言 今天教的是爬取每天按摩店的数据,不爬不知道呀,光是一个城市的前10页数据,都有1000多家店了,全部爬完,那不得至少3000家以上?...现在的市场需求都那么大吗 代码主要内容 动态数据抓包 json数据解析 requests模块的使用 保存csv 环境介绍 python 3.8 解释器 pycharm 编辑器 开始代码,先导包 import...表示请求成功 解析数据, 提取我们想要的一些数据内容 (店铺信息) searchResult = response.json()['data']['searchResult'] # for 遍历 提取列表中的每一个元素内容...266252179', 'limit': '32', 'offset': page, 'cateId': '-1', 'q': '按摩', } 这个是第二页和第三页的数据内容...店铺评分', '店铺评论量', '人均消费', '维度', '经度', '详情页', ]) csv_writer.writeheader() # 写入表头 运行代码

69550

元旦在家代码完成了一个Markdown利器Typora私有化图床工具~ Windows, macOS,Linux均可运行

/EasyTypora 通过这个项目你能得到什么?...这个图床服务可以单独拆出来,给其它网页用么? 当然可以!...cd EasyTypora # 安装依赖包 npm i 将conf.js里面的内容改为自己的服务器 module.exports = { // 填写域名或ip(带http或https协议,...通过Nginx加了https, 唯一需要注意的点是,在conf.js中,如果host配置了https, 那客户端的端口client_port需要设置为443 在前面http的基础上,给nginx配置做一个...image 未来的工作 做一个带鉴权的网页,可以批量传图 多写文章,测试这个工具的稳定性(工具用了不到2天写完,多多少少会有bug),修复BUG 以本项目为基础,搞一套WordPress发布程序,这套程序像

1.2K10

一个非教条式的TDD例子

关于测试驱动设计,觉得一点点提前设计是有必要的,它给了我一个宏观的方向,让能够顺利地开始。的个人习惯是,在开始测试代码前我会做一些简单的纸面设计,做一些简单的对象建模,定义好一些对外的接口。...在早期,也不会写纸面的设计,而是直接开始测试代码,实际上测试的时候脑海里是有设计的,只是没有显性化出来。...但从实用性来看,一股脑写完好几个场景的功能实现,然后补上后面几个场景的测试,也并非不可。要知道咱们代码的初衷是什么 —— 交付可用软件,或美其名曰交付可用的高质量软件。...但很多时候在编码过程中,由于编程语言的便捷性,我们在快速、简单地实现了某个边界场景用例时难免会存在让下一个测试直接通过的情况,比如我在第4个测试的时候,直接使用了这个算法: int batchCount...有时候明明一个功能完整的代码比简单、丑陋的代码要更快,就不会再去hard code,然后假装庆祝自己是在做“真”TDD。

30030

c++多线程学习(一)

前言: 大家好,是小涂,今天给大家分享一篇关于c++多线程的文章! 本篇文章围绕以下几个问题展开: 何为进程?何为线程?两者有何区别? 何为并发?C++中如何解决并发问题?...对于这句话的理解是:进程可以获取操作系统分配的资源,内存等;进程可以参与操作系统的调度,参与CPU的竞争,得到分配的时间片,获得处理机(CPU)运行。...对这句话的理解是:线程参与操作系统的调度,参与CPU的竞争,得到分配的时间片,获得处理机(CPU)运行。而进程负责获取操作系统分配的资源,内存。...1、何为并发? 并发: 在同一个时间里CPU同时执行两条或多条命令,这就是所谓的并发。 并发 : 并发是一种看似并发的假象。我们知道,每个应用程序是由若干条指令组成的。...这个道理就像,如果有3个程序员同时编写一个项目,不可避免需要相互的交流,如果这个交流的时间远远大于编码的时间,那么抛开代码质量来说,可能还不如一个程序猿来的快。

1.6K31

Python多进程多线程对比

今天来介绍一下Python多进程多线程,首先简单介绍一下什么是进程和线程。 何为进程?何为线程?...就绪状态是指线程具备运行的所有条件,逻辑上可以运行,在等待处理机;运行状态是指线程占有处理机正在运行;阻塞状态是指线程在等待一个事件(某个信号量),逻辑上不可执行。...因为当时t2,t3,t4都有可能获得GIL锁)t2获得GIL锁,t2由等待状态变为就绪状态,然后就开始运行,就这样不停的交替,形成了类似并发的情况,实际上这个就是一个并发,所以在IO密集型操作的程序(...(源码就不要想了,毕竟是爬磁力链接的,但是如果你加了群(群号见文末)私聊问我要那我还是可以考虑给,这里给怕被和谐 ) ? 还有一个问题,Python的计算密集型程序如何充分利用CPU资源?...有两种办法,一种是用C语言函数,Python调用C语言链接库,这个太难(毕竟会C语言的Python程序员太少了),来讲第二种方法,使用多进程(multiprocessing库)。

62020

何为静态,如何快速实现。(别人原创,改编转发)

何为静态 的答案:静态并不是有些老板说的为了加密用的。静态其实是使用php的网页。大概是控制器加接口的语法不方便收录,和所谓的SEO优化,需要一个静态页面。这就是静态。 1....什么是静态网页 所谓静态网站, 就是真实存在于Web服务器上的html文档 用户访问时, 只需要在浏览器地址栏输入这个文档的完整URL地址就可以 静态网页,非常有利于SEO优化, 对于网站的收录和排名非常有利...什么是动态网页 所谓动态网页, 是指网页中的数据是动态生成的, 通常是来自数据库 这些数据,只有当存在用户请求时, 数据才会与页面结构结合,动态生成一个完整页面返回给用户 这类网站最典型的特征,就是URL...静态的实现 静态的本质, 是通过重写动态的URL地址, 去掉问号等字符,使URL地址在搜索引擎面前看上去像是一个静态地址 Apache服务器, 实现静态的功能非常强大, 并且配置也非常的简单 Apache...是通过启动rewrite(重写)模块来实现静态的 4.

1.3K10

CSS 下拉菜单与 focus

focus 类 focus 类 :focus 表示被点击、触摸或 tab 选中的元素,笼统地说就是「获得焦点」的元素。 当初实现这个需求的时候同样考虑过采用 :hover 或者 :active。...tabindex 选中 默认不显示,:focus 激活时显示,很快码出几行代码。...究竟何为 tabindex,当时并没有深究,只知道加上后确实点击有反应了。当然出问题后又仔细翻了翻这方面的内容,就不按照平时喜欢的讲故事般的时间顺序整理,直接放上来。...碰巧的是,前面我们刚好设置了 tabindex,这个坑算是无意间跳过去了。 其次,当一个元素被聚焦时,点击一般的空白处无法使它失焦。...至于如何修复,方才说到只要让其它元素聚焦就可以顶替掉这个聚焦的元素使其失焦,那么我们只需要让一个层级足够高的元素可以被聚焦——设置 tabindex 参数(最好为 -1,原因自己往上翻)。

5.4K20

安利一个IDEA骚操作:一键生成方法的序列图

在平时的学习/工作中,我们会经常面临如下场景: 阅读别人的代码 阅读框架源码 阅读自己很久之前代码。...千万不要觉得工作就是单纯代码,实际工作中,你会发现你的大部分时间实际都花在了阅读和理解已有代码上。 为了能够更快更清晰地搞清对象之间的调用关系,经常需要用到序列图。...何为序列图? 网上对于序列图的定义有很多,觉得都不太好理解,太抽象了。最神奇的是,大部分文章对于序列图的定义竟然都是一模一样,看来大家是充分发挥了代码的“精髓”啊! 还是简单说一说的理解吧!...表示系统执行某个方法/操作(登录操作)时,对象之间的顺序调用关系。...这个图描述了微信支付相关角色(顾客,商家...)在微信支付场景下,基础支付和支付的的顺序调用关系。 ? img 下图是一个 HTTP 框架中的执行某个方法的序列图。

2.9K21

「后端小伙伴来学前端了」CSS3元素选择器 ::before ::after | 记录自己的前端学习日子

一直经常会看到这两玩意,但是一直没去了解这个东东,光肝Java啦,现在是为了完成老师的任务,每天是一边学一边敲代码。 个人感觉前端好玩还是好玩,样式难调也是真的难调。...今天也是学到了这个小知识,趁着更文分享给大家。 一、元素概念 其实从字面意思上理解即可,字吗,就是假的意思。...简而言之:元素选择器可以帮助我们利用CSS创建新标签元素,而不需要HTML标签,从而简化HTML结构。 应用场景 简单说几个最常见的例子吧。...CSS元素::after用来创建一个元素,作为已选中元素的最后一个子元素。通常会配合content属性来为该元素添加装饰内容。这个虚拟元素默认是行内元素。...,权重为1 五、元素实现案例 5.1、场景五:元素字体图标 就是做一个像element做一个这样的。

90110

Java编程之共享与缓存行填充

下面就Disruptor提到的CPU缓存话题,做了一些尝试和研究,Disruptor所说,CPU有缓存共享的问题,并且通过缓存行填充能完美的解决这个问题。...如果两个独立的线程同时两个不同的值会更糟,因为每次线程对缓存行进行操作时,每个内核都要把另一个内核上的缓存块无效掉并重新读取里面的数据。...第一个字是由24位哈希码和8位标志位(锁的状态或作为锁对象)组成的Mark Word。第二个字是对象所属类的引用。如果是数组对象还需要一个额外的字来存储数组的长度。...java培训 Java程序代码验证 官方也给了一个java的测试demo,那么下面针对各种不同的情景,做一下实验看看,是不是有缓存共享这个问题,测试代码如下: 下面针对各个测试场景,做一下简单的描述...CPU缓存共享的问题,确实打破了很多人对常规程序执行的理解,如何才能应用到工作中呢?有以下几点需要注意: 对volatile很熟悉,并且代码里面使用到了缓存屏障,需要看看能否用到这个缓存填充行。

52130
领券