首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏诸葛青云的专栏

    C语言 鼠标控制躲避小游戏

    stdlib.h> #include<time.h> #defineK 10//宽  #defineC 20//长 #defineI 7//角色位置 #defineD 7//障碍间隔 #defineL ((K- 2) wo=K-2;//鼠标越下界情况处理 if(wo<1) wo=1;//鼠标越上界情况处理 if(a[wo][I]=='*')break; else{ goon://复活 a[wo][I]='O'; ; system("pause"); } a[wo][I]=' '; for(inti=0;i if(d==D) { random=rand()%(2*L)-L;//生成随机障碍 if(random>K- <3&&random>-3)) random=3; if(random>0)for(inti=1;random>0;random--,i++) a[i][C-1]='*'; elsefor(inti=K- 2;random<0;random++,i--) a[i][C-1]='*'; d=0; score++; speed=1000/score; } elsefor(inti=1;i<=K-2;i++) 

    6.4K00发布于 2019-06-16
  • 来自专栏码神随笔

    第九届省赛蓝桥杯b组c++

    (K-K)*(K-(K-1))/2>=( -1)- ​​​​​​​=​​​​​​​- ​​​​​​​ -1 消消元: 1/2* [(K-1)K+ (K-2)(K-1)+(K-3)(K-2)…(K-K)( K-(K-1))]>=-K 配凑法: 1/2* [k2+(K-1)2+ (K-2)2+(K-3)2…(K-(k-1))^2]-[K+(K-1)+(K-2)+(k-3)…+(K-(K-1))]>=-K (同时增加减少 [K+(K-1)+(K-2)...... (K-(K-1))]- [K+(K-1)+(K-2)...... (K-(K-1))+(K-K)] ) 两边化简一下:1/2* [K2+(K-1)2+ (K-2)2+(K-3)2…1^2]-[K+(K-1)+(K-2)+(k-3)…+(K-(K-1))+(K-K)]

    39320编辑于 2022-12-13
  • 来自专栏Java啊

    java数据结构和算法(四)

    mid不 再是中间或插值得到,而是位于黄金分 割点附近,即mid=low+F(k-1)-1 (F代表斐波那契数列),如下图所示 对F(k-1)-1的理解: 由斐波那契数列 F[k]=F[k-1]+F[k- 2] 的性质,可以得到 (F[k]-1)=(F[k-1]-1)+(F[k-2]-1)+1 。 该式说明:只要顺序表的长度为F[k]-1,则可以将该表分成长度为F[k-1]-1和F[k-2]-1的两段,即如上图所示。 2] //因为前面有f[k-1]个元素,所以可以继续拆分 f[k-1] = f[k-2]+f[k-3] //即 f[k-1]的前面继续查找 2] //因为前面有f[k-2]个元素,所以可以继续拆分 f[k-2] = f[k-3]+f[k-4] //即 f[k-2]的前面继续查找

    31910编辑于 2022-12-26
  • 来自专栏Java+爬虫

    Qz学算法-数据结构篇(查找算法--插值、斐波那契查找)

    mid=low+F(k-1)-1(F代表斐波那契数列),如下图所示3.对F(K-1)-1理解由斐波那契数列F[K]=F[k-1]+Fk-2]的性质,可以得到(F[k]-1)=(Fk[-1]-1)+(F[k- 该式说明:只要顺序表的长度为Fk-1,则可以将该表分成长度为F[k-1]-1和F[k-2]-1的两段,即如上图所示。 我们应该继续向数组的前面查找 high=mid-1; //1.全部元素=前面的元素+后边元素 //2.f[k]=f[k-1]+f[k- 右边) low = mid +1; //1.全部元素=前面的元素+后边元素 //2.f[k]=f[k-1]+f[k- 因为后面我们有f[k-2]所以可以继续拆分f[k-1]=f[k-3]+f[k-4] //4.即在f[k-2]的前面进行查找k-=2 //5.即下次循环

    24410编辑于 2023-06-26
  • 来自专栏Python编程 pyqt matplotlib

    关联分析(二):Apriori算法的python实现

    len(Lk) for i in range(lenLk): for j in range(i+1, lenLk): L1 = list(Lk[i])[:k- 2]; L2 = list(Lk[j])[:k-2] L1.sort(); L2.sort() if L1==L2: #if first k-2 elements set, dataSet)) L1, supportData = scanD(D, C1, minSupport) L = [L1] k = 2 while (len(L[k- 2]) > 0): Ck = aprioriGen(L[k-2], k) Lk, supK = scanD(D, Ck, minSupport)#scan DB to get

    1.3K40发布于 2019-10-25
  • 来自专栏灰灰的数学与机械世界

    竞赛好题暑假练习12

    int_{0}^{1}\frac{[f_{1}(x)-f_{0}(x)]^2}{f_{1}(x)+f_{0}(x)}dx\\& \geq 0\end{align*} 若 a_{k-1} \geq a_{k- 2}(k=2,3,\dotsb) ,则 f_{k-1}(x) \geq f_{k-2}(x) ,且 \displaystyle a_{k}-a_{k-1}=\int_{0}^{1}\left[\frac {f_{k-1}^{2}(x)-2f_{k-1}(x)f_{k-2}(x)}{f_{k-1}(x)+f_{k-2}(x)}\right]dx\geq \frac{1}{2}\int_{0}^{1}\frac {(f_{k-1}(x)-f_{k-2}(x))^2}{f_{k-1}(x)+f_{k-2}(x)}dx \geq 0 即序列 \{a_{n}\} 是单调递增的;同时由于 f_{0}(x) , f_{1

    53820编辑于 2022-11-23
  • 来自专栏JusterZhu

    斐波那契查找

    对F(k-1)-1的理解: (1)由斐波那契数列F[k] = F[k-1] + F[k-2]的性质,可以得到(F[k]-1) = (F[k-1]-1) + (F[k-2]-1)。 该式子说明,只要顺序表的长度为F[k-1],则可以将该表分成长度为F[k-1]-1和F[k-2]-1的两段,即如上图所示。从而中间位置为mid=low+F(k-1)-1。 - 1] + fibarray[k -2]; //因为前面有fibarray[k-1]元素,所以可以继续拆分fibarray[k-1] = fibarray[k- //说明 //1.全部元素 = 前面的元素 + 后面的元素 //因为后面有fibarray[k- 2]元素,所以可以继续拆分fibarray[k-1] = fibarray[k-3]+fibarray[k-4]; //即在fibarray[k-2]的前面继续查找

    61310编辑于 2022-12-07
  • 来自专栏JavaEE

    四大查找算法

    对于这个公式做几点说明: 斐波那契数列是符合f(k) = f(k-1) + f(k-2)的一个数列,例如1, 1, 2, 3, 5, 8……; 要使用斐波那契查找,就要先构建一个斐波那契数列,用来获取中间索引 指向数组的最后一个索引; 然后从斐波那契数组中根据mid = left + f(k-1) - 1来获取中间索引; 然后创建一个新数组,长度为f(k),因为长度为f(k)的数组才满足f(k) = f(k-1) + f(k- right = mid - 1,同时k要减1,因为刚才我们是在斐波那契数列f(k)的位置获取的索引,在f(k)的前面,有f(k-1)个元素,将这个f(k-1)个元素继续拆分,就可以拆成f(k-1) = f(k- left + f(k-1-1) - 1重新获取mid; 如果这个数比要查找的数更大,就让left = mid + 1,同时k要减2,因为上面说了,斐波那契数列满足f(k) = f(k-1) + f(k- 2),在f(k)的左边,有f(k-1)个元素,右边有f(k-2)个元素,继续拆分就变成了f(k-2) = f(k-3) + f(k-4),所以是k-2,再根据mid = left + f(k-1-2)

    69721发布于 2020-10-10
  • 来自专栏CSDNToQQCode

    斐波那契查找

    创建一个新数组,长度为f(k),因为长度为f(k)的数组才满足f(k) = f(k-1) + f(k-2),才能使用斐波那契数列去获取mid索引。 right = mid - 1,同时k要减1,因为刚才我们是在斐波那契数列f(k)的位置获取的索引,在f(k)的前面,有f(k-1)个元素,将这个f(k-1)个元素继续拆分,就可以拆成f(k-1) = f(k- 如果这个数比要查找的数更大,就让left = mid + 1,同时k要减2,因为上面说了,斐波那契数列满足f(k) = f(k-1) + f(k-2),在f(k)的左边,有f(k-1)个元素,右边有f( k-2)个元素,继续拆分就变成了f(k-2) = f(k-3) + f(k-4),所以是k-2,再根据mid = left + f(k-1-2) - 1重新获取mid。

    53140编辑于 2022-11-29
  • 来自专栏Java+爬虫

    Qz学算法-数据结构篇(查找算法--插值、斐波那契查找)

    mid=low+F(k-1)-1(F代表斐波那契数列),如下图所示3.对F(K-1)-1理解由斐波那契数列F[K]=F[k-1]+Fk-2]的性质,可以得到(F[k]-1)=(Fk[-1]-1)+(F[k- 该式说明:只要顺序表的长度为Fk-1,则可以将该表分成长度为F[k-1]-1和F[k-2]-1的两段,即如上图所示。 我们应该继续向数组的前面查找 high=mid-1; //1.全部元素=前面的元素+后边元素 //2.f[k]=f[k-1]+f[k- 右边) low = mid +1; //1.全部元素=前面的元素+后边元素 //2.f[k]=f[k-1]+f[k- 因为后面我们有f[k-2]所以可以继续拆分f[k-1]=f[k-3]+f[k-4] //4.即在f[k-2]的前面进行查找k-=2 //5.即下次循环

    26800编辑于 2023-06-30
  • 来自专栏全栈程序员必看

    二项分布方差的详细证明

    C}_n^k = n\mathrm{C}_{n-1}^{k-1}\) 同样地,你可以得到 \((k-1)\mathrm{C}_{n-1}^{k-1} = (n-1)\mathrm{C}_{n-2}^{k- (我认为这是最难的一步,读者可以停下来思考思考) 你肯定想用 \((k-1) \mathrm{C}_{n-1}^{k-1} = (n-1) \mathrm{C}_{n-2}^{k-2}\),但人家是 \ {C}_{n-1}^{k-1} p^{k-1} q^{n-k}\right] \\ =& np \left[\sum_{k=2}^{n} (n-1)p \cdot \mathrm{C}_{n-2}^{k- 2} p^{k-2} q^{n-k} + (p+q)^{n-1}\right] \\ =& np \left[(n-1)p \cdot \sum_{k=2}^{n} \mathrm{C}_{n-2}^{ k-2} p^{k-2} q^{n-k} + 1\right] \\ =& np \left[(n-1)p \cdot (p+q)^{n-2} + 1\right] \\ =& np \left[(n-

    61160编辑于 2022-09-20
  • 来自专栏全栈开发工程师

    【Java数据结构和算法】013-查找:常见查找算法、顺序(线性)查找、二分查找、插值查找*、斐波那契查找*

    2] 的性质,可以得到 (F[k]-1)=(F[k-1]-1)+(F[k-2]-1)+1 。 该式说明:只要顺序表的长度为F[k]-1,则可以将该表分成长度为F[k-1]-1和F[k-2]-1的两段,即如上图所示。 2] //因为请前面有f[k-1]个元素,随意我们可以继续拆分f[k-1]=f[k-2]+f[k-3] //即在f[k-1]的前面继续查找 2 //1、全部元素等于前面的元素,加上后面的元素 //2、f[k]=f[k-1]+f[k-2] //3、 因为后面我们有f[k-2],所以可以继续拆分f[k-1]=f[k-3]+f[k-4] //4、即在f[k-2]的前面机型查找k-=2 //

    35010编辑于 2025-01-06
  • 来自专栏AILearning

    【机器学习实战】第11章 使用 Apriori 算法进行关联分析

    2] L2 = list(Lk[j])[: k-2] # print '-----i=', i, k-2, Lk, Lk[i], list(Lk[i])[ : k-2] # print '-----j=', j, k-2, Lk, Lk[j], list(Lk[j])[: k-2] L1.sort() n", "outcome: ", supportData # L 加了一层 list, L 一共 2 层 list L = [L1] k = 2 # 判断 L 的第 k- L[k-2]=L[0]=[frozenset([1]), frozenset([3]), frozenset([2]), frozenset([5])],最后面 k += 1 while (len (L[k-2]) > 0): print 'k=', k, L, L[k-2] Ck = aprioriGen(L[k-2], k) # 例如: 以 {0},{1},{2

    2.1K60发布于 2018-01-15
  • 来自专栏C++开发

    【数据结构:排序算法】堆排序(图文详解)

    第k-1层:2^(k-2)*1。 第k-2层:2^(k-3)*2。 …… 第2层2^1*(k-2)。 第1层2^0*(k-1)。 总的:2^0*(k-1)+2^1*(k-2)+……+2^(k-2)*1=2^k+2*k-4。 O(N)=log N。 根据上面的结论,我们知道如果要建堆,那肯定是用向下调整更好。

    1.3K10编辑于 2024-12-09
  • 来自专栏架构之路

    斐波那契查找原理详解与实现

    low=mid+1说明待查找的元素在[mid+1,hign]范围内,k-=2 说明范围[mid+1,high]内的元素个数为n-(F(k-1))= Fk-1-F(k-1)=Fk-F(k-1)-1=F(k- 正好分给两个子序列,每个子序列的个数分别是F(k-1)-1与F(k-2)-1个,格式上与之前是统一的。 不然的话,每个子序列的元素个数有可能是F(k-1),F(k-1)-1,F(k-2),F(k-2)-1个,写程序会非常麻烦。

    2.1K80发布于 2018-03-19
  • 来自专栏数控编程社区

    如何用数控车床宏程序加工变螺距螺纹?

    F20 K-2 G00 X38. 每次切深为上次的0.8 IF [#1 GE 0.05 ] GOTO1 如果切深≧0.05,则转N1 #1=0.05 切深在0.05 GOTO1 N2 G00 X30 Z21 G34 Z-100 F20 K- G34 Z-100 F[20-#3] K-2 *螺纹自起刀点开始,每转过一圈,则刀具向右移动#3 G00 X38 Z21 #3=#3+0.02 IF[#3 LE 2]GOTO3 X38 Z21 M30

    85910编辑于 2022-05-16
  • 来自专栏HansBug's Lab

    3101: N皇后

    ,k-2,k+3,k+5,...,n-1,1,3,5,...,k+1         (k为偶数,n为偶数) k,k+2,k+4,...,n-1,2,4,...,k-2,k+3,k+5,... ,k-2,k+3,...,n,2,4,...,k+1               (k为奇数,n为偶数) k,k+2,k+4,...,n-2,1,3,5,...,k-2,k+3,...

    88590发布于 2018-04-11
  • 来自专栏TechBlog

    循环码生成矩阵与监督 (校验) 矩阵

    g_{n-k} x^{n-k}+g_{n-k-1} x^{n-k-1}+\cdots+g_{1} x+g_{0}, r=n-k \\ C(x)=\mathbf{u G}(x)=(u_{k-1} u_{k- 2} \cdots u_{0}) \mathbf{G}(x) \\ =u_{k-1} x^{k-1} g(x)+u_{k-2} x^{k-2} g(x)+\cdots+u_{0} g(x) \\ G(x )=[\begin{array}{c} x^{k-1} g(x) \\ x^{k-2} g(x) \\ \vdots \\ g(x) \end{array}] rightarrow G=[\begin{

    1.1K30编辑于 2023-06-20
  • 来自专栏蛰虫始航

    Python数据分析基础之关联分析Apriori

    len(Lk) for i in range(lenLk): for j in range(i+1, lenLk): L1 = list(Lk[i])[:k- 2]; L2 = list(Lk[j])[:k-2] L1.sort(); L2.sort() if L1==L2: #前k-2个项相同时,合并集合 #print(D) L1, supportData = scanD(D, C1, minSupport) L = [L1] k = 2 while (len(L[k- 2]) > 0): Ck = aprioriGen(L[k-2], k) Lk, supK = scanD(D, Ck, minSupport)#扫描数据集,从CK得到Lk

    2K50发布于 2019-10-11
  • 来自专栏全栈程序员必看

    基于BP神经网络PID控制+Simulink仿真

    BP神经网络PID控制器的内部结构如下图所示: S-function的输入为:u=[e(k);e(k-1);e(k-2);y(k);y(k-1);r(k);u(k-1);隐含层+输出层权值系数( k-2);隐含层+输出层权值系数(k-1)]= [u(1);u(2);u(3);u(4);u(5);u(6);u(7);…u(隐含层权值个数+输出层权值个数)],把所有的权值系数从输出再返回到输入是为了更新权值矩阵 包括控制变量u,三个PID参数:Kp,Ki,Kd,隐含层+输出层所有加权系数 sizes.NumInputs = 7+12*nh; %定义输入变量,包括前7个参数[e(k);e(k-1);e(k- 2)权值系数矩阵,维数nh*3 wo_2 = reshape(u(8+3*nh:7+6*nh),3,nh); %输出层(k-2)权值系数矩阵,维数3*nh wi_1 = reshape(u(8+6*nh = [u(1)-u(2);u(1);u(1)+u(3)-2*u(2)]; %xx=[u(1)-u(2);u(1);u(1)+u(3)-2*u(2)]=[e(k)-e(k-1);e(k);e(k)+e(k-

    11.5K57编辑于 2022-09-02
领券