![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
c与指针
这个作者很懒,什么都没留下…
展开
-
C实现二叉树的建立和遍历
本文是二叉树的基本创建和遍历,代码是C,源码如下:#include <stdio.h>#include <stdlib.h> typedef char ElemType;//定义节点typedef struct BiTNode{ ElemType data; struct BiTNode *lChild,*rChild;} BiTNode,*BiTree;//创建一颗二叉树原创 2017-11-19 14:55:28 · 390 阅读 · 0 评论 -
LeetCode概率题目汇总
假设有一个基础随机函数可以以概率P返回0,以概率(1-P)返回1,设计一个函数,以等概率返回0和1。思路:连续调用两次基础随机函数,那么有四种结果:1、00概率为p*p; 2、11概率为(1-p)*(1-p);3、10概率为(1-p)*p; 4、01概率为p*(1-p) 可以看到结果3和结果4是概率相等的。function random() { $a = b原创 2018-01-21 22:10:37 · 1878 阅读 · 0 评论 -
异或解决LeetCode两道算法题目
1、一个数组中,只有一个数字出现了一次,其他都出现了两次,找出这个出现一次的数字?思路:相同两个数异或结果是0, 任意一个数和0异或的结果还是自己,异或满足交换律。 所以可以遍历数组,所有数都异或一遍,最后的结果,就是只出现一次的数字。$arr = [1,1,2,3,3,4,4,5,5];function find_unique($arr) { $res = 0; fo原创 2018-01-20 23:14:01 · 622 阅读 · 0 评论 -
二分搜索查找最左边的数
二分搜索查找最左边的数给定一个有序数组,从小到大,有重复值,查找出目标元素在数组中最左边的值。//循环实现二分查找function s2($arr,$val) { $i = 0; $j = count($arr)-1; $res = -1; //这里保存目标元素的索引 while($i<=$j) { $mid = intval($i + ($j-$i) / 2); ...原创 2019-03-02 13:06:10 · 924 阅读 · 0 评论