c++线上的编程练习的网站有哪些

c++线上的编程练习的网站有哪些,第1张

这个应该很多的,比如牛客网,还有leetcode很多的,多看看百度知道,选C++标签什么的,还有各种论坛应该也有一堆。如果真的想深入学习的话可以下载一些c++的pdf电子书来看看

经典书籍《c++primer》《算法导论》《编译原理》.....下面是蚂裤答一些网站:

WelcomeToPKUJudgeOnline北京大学的OnlineJudge。POJ上面的题目有点老了,但好处是做的人多,经典算法题多,解题报告也多,适合上手。

2.ZOJ:Home浙江大学的OnlineJudge。ZOJ用的不多,但为数不多的几次体验好像都还可以,值得尝试。

3.WelcometoHangzhouDianziUniversityOnlineJudge杭州电子科技大学的OJ。杭电OJ在近几年取代了POJ,成为是目前国内最主流的OJ。它的题目丰富,难度梯度合理,广受全国各大高校的青睐。每年也会有大大小小的比赛挂在杭电的OJ上举办,去年的亚洲区网络赛也是在这上面做的。由此可见其在国内广大ACMer心目中的地位。也正因为如此,网上h的解题报告也很多,适合个人进阶训练。

4.UVaOnlineJudge西班牙Valladolid大学的OnlineJudge。是最古老也是全世界最知名的OnlineJudge,题库有详细的分类:如世界总决赛题目,刘汝佳的题目等等。题目目类型非常广泛。绝大部分的题目难度偏易,适合初学者磨练程序设计。

5.TimusOnlineJudgeURAL是一个俄罗斯的在线题库。里面的题目相比国内一些OJ来说颇有些难度,我们学校集训队老队员闷慧喜欢拿这里的题出给新队员做,可见有一定的进阶作用。

6.SphereOnlineJudge(SPOJ)SPOJ是波兰最为出色的OnlineJudge之一,界面和谐,题目类型也非常丰富,适合有一定基础的选手练习,对高手而言也是个提高能力的良好平台。更多介绍见博客:SPOJ简介-海山。

7.USAComputingOlympiadUSACO是美国中学生的官方竞赛网站、美国著名在线题库,专门为信息学竞赛选纯旦手准备;做题方式模拟正式比赛,采用标准测评机、文件输入输出、直接提交程序源文件的测评方式;网站的Training题目全面,是学习信息学不可不知的网站,每年NOI,NOIP都会参考上面的题目;每道题附有详细题解,可查看测试数据和运行结果,便于调试、发现错误并改正。采用章节递进的层次结构,由易到难,讲授知识、练习编程结合,题目必须依次完成,避免了只挑简单题做的行为;各章节犹如一本竞赛辅导书,形成了一个鲜明的知识结构,利于OI初学者和高手逐步提高水平,充分学习信息学各方面知识,避免偏颇。(来源:usaco_百度百科)

9.CodeforcesCodefores是俄罗斯的一个算法竞赛网站,由SaratovStateUniversity创办和维护。Codeforces主要强调的是算法竞赛,每隔1个礼拜左右就会有定期的线上比赛举行,其题库也是由每场比赛的题目一场场积累下来的。相比上面几个以题库为核心的OJ,Codeforces的算法竞赛比较适合锻炼自己的临场发挥和压力下编程能力。

10.HUSTOJ华中科技大学的OnlineJudge。hustOJ也和主流的其他OJ一样有着丰富的题库。但它主要的用处,是它所提供的这么一个叫做vjudge的东西,全称叫做VirtualJudge。通过vjudge,你可以从各大OJ、包括但不限于上述的所有OJ中直接抽取题目,利用这些题目创建一个属于你自己的比赛。非常适合专题训练、日常集训以及小伙伴们一起比赛切题玩。

11.LeetCodeOnlineJudge与很多OJ不同,leetcode是一个主要面向面试者的OJ(LeetCodeOJisaplatformforpreparingtechnicalcodinginterviews)。上面的题目不多,目前只有152道,很多都是许多大公司的面试题目。题目类型偏基础,基本不会考察复杂的算法,很多都是对基础知识的应用,难度与topcoderdiv1250或codeforcesdiv1A题难度相当。如果是希望练习编程基础或准备公司面试的话非常推荐此OJ(感谢室友/集训队大神/CMU准硕士@yunpeng同学提供Leetcode介绍(1/1/2015更新:室友拿了google的offer不去CMU了))。

希望可以帮到您,谢谢!

开发调试环境: Ubuntu 14.10,openJdk 1.7,Android Studio 1.0.2,android-5.0.1_r1源码

由于AS是基于IntelliJ IDEA开发的,所以本文也适用于IntelliJ IDEA

一、修改Android Studio(以下简称AS)的内存配置

因为在导入源码时需要消耗大量内存,所以先修改IDEA_HOME/bin/studio64.vmoptions(x86的机器修改studio.vmoptions)中-Xms和-Xmx的值。文档中使用的是748m, 可自行修改。

二、配置AS的JDK、SDK

在IDE中添加一个没有classpath的JDK, 这样可以确保使用源码里的库文件

并将其作为要使用的SDK的Java SDK。如下图

三、生成导入AS所需余芦配置文件(*.ipr)

①编译源码(为了确保生成了.java文件,如R.java;如果编译过,则无需再次编译)

②检查out/host/linux-x86/framework/目录下是否有idegen.jar

如果idegen.jar不存在,执行:

mmm development/tools/idegen/

在5.0.1的源码中会生成res.java的文件夹,导致idegen.jar运行时抛FileNotFoundException,这是idegen的代码不够严谨造成的。

我的分享里有修改这个bug的patch,或者直接使用我分享的idegen.jar。

③执行

development/tools/idegen/idegen.sh

等待出现类似下面的结果:

Read excludes: 5ms

Traversed tree: 44078ms

这时会在源码的根目录下生成android.ipr和android.iml两个IntelliJ IDEA(AS是基于IntelliJ IDEA社区版开发的)的配置文件

Tips:

AS在导入代码时比较慢,建议先修改android.iml,将自己用不到的代码exclude出去.可以仿照过滤.repo文件夹的语法,如:

<excludeFolder url="file://$MODULE_DIR$/.repo" />

<excludeFolder url="file://$MODULE_DIR$/abi" />

<excludeFolder url="file://$MODULE_DIR$/art" />

这样在导入时就会跳过abi和art文件夹.过滤的越多,AS的处理速度就会越快.

④在AS中打开源码根目录下新生成的android.ipr

如果在导入时AS出现

则建议按竖烂带照其给定的解决方法来解决(网址:http://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit),具体内容如下图:

四、解决源码中跳转错误问题

①为当前工程设置正确的SDK和JDK

②设置'Modules'的依赖

先将所有依赖删掉,只留下上图'1'所指向的两个(注意:这里删除全部只是为了方便。如果确实用到了.jar,在将它们的路径添加进来就可以了.

如:5.0.1的ContactsCommon用到了geocoder-2.9.jar和libphonenumber-6.2.jar)

点击上图中'2'指向的'+'并选择上图'3'指向的'Jars or directories'选项,依次将frameworks和external文件夹添加进来.如:

其它版本的代码在添加frameworks时历举可能会显示成:

没有关系,只是显示问题,点击OK还是会把frameworks路径添加进去的.

如果还有代码跳转错误,请仿照上面的步骤将相应代码的路径或jar文件添加到其Dependencies标签页中即可.

五、DEBUG源码

我们可以通过给刚导入的工程在'Modules'中添加'Android Framework'来让AS将它作为一个Android工程,从而方便我们调试代码.

可以按照上图中'1'和'2'来添加Android Framework支持.

在代码中加断点,然后选择'Run'->'Attach debugger to Android process'或者直接点击下图所示的图标

在d出的选择进程(Choose Process)对话框中,勾选显示所有进程,选择要DEBUG的代码所在的进程,点击OK即可.

六、其它

代码中很多地方提示Call requires API Level x.... 出现这个问题是因为AS将我们的工程当做安卓应用程序工程了,且源码中没有指定minSdkVersion.

我们只需在源码根目录加一个声明minSdkVersion的AndroidManifest.xml文件即可(分享了一个AndroidManifest.xml)。

也可以考虑使用build.gradle来解决该问题。

很多朋友都希望有一个自己的论坛,但是做论坛又谈何容易?这个问题很大,如果自己编程开发的话,至少需要半个月不睡觉甚至好几个月、好几年的时间。一个好的论坛,便于网友浏览、占用服务器资源少、运行速度快是最重要的。

��任何论坛的人气都存在无限发展的潜能,正因为有了论坛,才会出现超大型的网站。所以论坛的程序更要高度优化,以适应未来可能出现的高峰期。数据库类型,ASP最好选用SQL Server或文本类型,PHP选用MySQL或文本数据类型;文本类型的论坛制作难度更大,数据库文件最弊袭好不要超过300K。

��如果您制作网页还不到半年,最好不要太多考虑做论坛,以免分心,论坛不是谁都能做的,一是因为很多技术问题,需要自己多多学习;二是论坛的人气、言论的维护,如何去处理这些问题。我们去看看很多老牌的个人主页,还有哪些朋友在维护论坛?有时候真是说说罢了。其实建个留言板就很好了,留言板和论坛的作用是完全一样的。

��如果选用了Access数据类型的论坛,网站空间的费用可能会比较高;如果最高在线人数不到20人,一年300多元就够了;如果在线人数比较高、访问量大,一年需要2000~一万多元以上,我有位朋友就是因为流量太大而被服务商请了出来,要求更换2000多元/年的服拍辩务器。如果用你的个人电脑做论坛服务器,是很难胜任的,不能保证24小时开机,不能保证稳定运行,由于带宽不足更不能承受大流量。

��如果你有充足的资金,就可以考虑做论坛了,论坛总的主题一定要明确。可以使用别人的作品程序。你有必要学习ASP方面的教程。使用别人的作品,调试的步骤如:

��1.请点击这里搜索:http://www.google.com/search?hl=zh-CN&q=ASP+%E8%AE%BA%E5%9D%9B&lr=。

��2.安装IIS或PWS,本站有介绍的。

��3.把压缩包解压缩在本地任意的一个目录里,然后给这个目录设置虚拟目录,别名为zp。。

��4.用http://localhost/zp即可在本地浏览你的论坛了。

��5.一切顺利之后,可直接上传到你的ASP空间。然后用CuteFTP直接上传,如果不能运行,一是可能你下载的这套程序中有错误,袭卜缺比如它的数据路径不对;二是可能IIS或虚拟目录有问题。如果要用自己的电脑做服务器,注意不要在WinXP下。

��本文没有提到论坛具体是如何一步一步做的,因为这是一项庞大的工程,可能100篇文章也讲不完,我暂时也没这个精力和能力。仅注册用户、用户登录这一项就是个老难题,当注册用户达到30万,数据库如何分配?tencent网站登录慢就是这个原因。

现在论坛不好备案,是个问题


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12509140.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存