题目大意:输入n个正整数(<=2,000,000),计算其中的反序对的个数。例如5,4,3,2,1的反序对数是4对,1,2,3,4,5的反序对数是0。(注意是相邻的逆序,不统计不相邻的逆序,当时搞错了,太冤了,但大概思想是对的。 后来经下面的哥们提醒,确实如果只是相邻的只要O(n)就能解决了,不需要O(nlogn)。那么推理原来的思想是对的,也就是统计所有的,5,4,3,2,1应该是10对。总之给出了两种情况的二叉树方法)
解决方法:1)将输入的数字按输入的顺序建立二叉排序树,(如果大于或等于该节点,则比较它的右子树;如果小于则比较它的左子树。当比较到空节点时,则插入这个节点)。
2)计算反序对数,遍历树的每个节点,如果该节点没有左子树则反序对为0,往其右子树遍历。如果该节点右左子树,则统计其左子树上的所有节点的个数。 递归的临界条件是:当前结点的左右结点都为空,返回0。
当时的想法是对的,程序也编的差不多。今天实际在机子上编写,发现原来的纸上的程序还是有很多问题的。(今天也弄了将近一个小时)
昨天的问题:1)没有Public,
2)template针对Class变量的使用错误,建立是需要TreeNode * root=new TreeNode(); 即在类名后面加上类型。 函数传递时也需要将TreeNodeT变量加入。
3)递归的时候在只需要一个函数就可以了,临界条件是对的,但是当右子树时
if(pTree->rightchild!=NULL) //注意是if,不是while,因为已经递归的计算了
{
return CaculateReversePairs(pTree->rightchild);//右子树,不能加1
}
不需要加1,当时可能没哟加1,但是印象中又好像加了,这一点非常重要。
############.cpp#######################
二、如果按照我的思想,即每个节点都要统计左子树所有节点数目。例如5,4,3,2,1逆序数为10,(5.4)……(5,1);(4,3)……(4,1);……(2,1)
这就需要在每次访问该节点时统计该节点左子树的所有节点数目。并且按这种方式中序遍历树中的所有节点。
分享到:
相关推荐
2--[反序数3].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码2--[反序数3].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码2--[反序数3].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码2-...
4--[反序数2].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码4--[反序数2].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码4--[反序数2].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码4-...
5--[反序数1].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码5--[反序数1].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码5--[反序数1].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码5-...
Weblogic反序列化漏洞补丁(FMJJ),这是一个累积补丁,代号FMJJ
weblogic 补丁 反序列化补丁 。己已经打上补丁了。欢迎下载
CVE-2020-9496 ofbiz反序列化漏洞分析1
人工智能-项目实践-检测-Apache Shiro 反序列化漏洞检测与利用工具 Shiro_exploit Shiro_exploit用于检测与利用Apache Shiro反序列化漏洞脚本。可以帮助企业发现自身安全漏洞。 该脚本通过网络收集到的22个key,...
CVE-2019-17564,Apache-Dubbo反序列化漏洞
windows版weblogic的JAVA反序列化漏洞修改方法,亲测
Apache Struts2 官方发布了最新的安全公告,披露了一个远程命令执行漏洞(漏洞编号:CVE-2018-11776,官方编号:S2-057),攻击者可利用漏洞实施远程命令执行攻击。特给出struct2.0-2.3.35的修复方案
1、安装weblogic server版本 2、生成wlfullclient.jar包 3、在IDEA新建一个工程文件
1. 首先使用 ysoserial 生成反序列化文件,然后自行编写反序列流程,触发构造链 3. 触发请求: 4. 然后查看urldns中gadget的生成过程:
CVE-2021-26295 Apache OFBiz 反序列化漏洞
好用的Weblogic XML 反序列化漏洞检查工具 CVE-2017-10271 使用范围Oracle WebLogic Server 10.3.6.0.0版本 Oracle WebLogic Server 12.2.1.1.0版本 Oracle WebLogic Server 12.1.3.0.0版本
Jackson官方github仓库发布安全issue,涉及漏洞CVE-2019-14361和CVE-2019-14439,均是针对CVE-2019-12384漏洞的绕过利用方式,当用户提交一个精心构造的恶意JSON数据到WEB服务器端时,可导致远程任意代码执行。...
weblogic反序列化漏洞(绕过CVE-2019-2725)-检测POC .网上几乎没有,请珍惜。
Java反序列化终极测试工具
weblogic应用上的资源分享给大家,如涉及版本,请告知,谢谢。
struts2.0反序列化漏洞,存在s2-005、s2-016、s2-016_3、s2-017等漏洞解决方案,已升级可用
Java反序列化漏洞检查工具V1.2_Weblogic XML反序列化漏洞检查工具CVE-2017-10271