我正在为面试做准备。我以前每天都练习几个面试问题。但有时,当事情没有得到我,我使用互联网作为参考。
现在在这个问题上说,
Q编写程序删除堆栈的中间元素,而不使用数据结构?现在我卡在第38行,上面写着
char x = st.pop();
在这里,char是如何存储过去的值,因为它没有提到数组,这是如何可能的。
//Java code to delete middle of a stack
package my.project;
import java.io.*;
import java.util.*;
public class GFG {
public static void ma
我正试图解决在第6章结束时从底层到最后的练习。这是我在第一个问题上发生的.
(defn sum [start end] (delay (reduce + (range start end)))) ;; Define sum.
=> #'chapter6.core/sum
(time (sum 0 1e7)) ;; Start sum but it delays, so almost no time elapses.
"Elapsed time: 0.2808 msecs"
=> #object[clojure.lang.Delay 0x2656
我需要一个F#中的递归函数,它为我提供了一个非空列表的最大值。示例:
biggest [2;4;5;3;9;3]
应该返回9
更新1
我正在学习递归函数,这是一本没有答案的书中的练习。我想在这里问是可以的,但这似乎不是个好主意。好的,我没有写任何代码示例,所以它似乎是一个懒人的家庭作业练习。不管怎样,这是我最好的尝试:
let rec highest l =
match l with
|[] -> 0
|x::y::xs -> if x > y then highest x::xs
else highest y
我正在尝试在IO的第二天完成“七天内的七种语言”一书中的第二个练习。在其中,你会问:“如果分母是0,你会如何改变/返回0?”我已经确定可以使用以下命令向Number添加一个方法:
Number new_div := method(i, if(i != 0, self / i, 0))
我不确定的是如何替换运算符表中的“/”。我试过了:
Number / := Number new_div
Number / := self new_div
但是我得到了一个异常,因为它试图调用“/”。我如何在Number /上获得句柄,这样我就可以存储对旧方法的引用,然后为自己的目的重新定义它?我说的全错了吗?
我是一个算法初学者,刚刚开始阅读Michael的“Java中的数据结构和算法”。他提出了一个基于二进制递归的函数"BinarySum(A,i,n)“。
BinarySum(A,i,n)
Input:An array A and integer i and n
Output: The sum of n integers in A starting and index i
if n==1 then
return A[i];
return BinarySum(A,i,[n/2])+BinarySum(A,i+[n/2],[n/2])
我们将从BinarySum(A,0,n)开始
标记为重复。我不认为这是重复的,因为
一段时间跨度的平均值,以天为单位,连续几年
以及丢失的数据
在其他地方没有被处理过。我做了一个答案,不允许我贴在原来的问题上。所以我把它粘贴在这里。
基于15 years from 1993 to 2008的每日数据。如何根据以兴趣日为中心的31天窗口,计算一年中每一天的变量Open的日平均值。因此,15⨯31 = 465 dates为一天的统计做出了贡献。
在这15年中,只有365项产出。
可以从这里下载该文件:
我是Haskell的新手,不了解haskell是如何处理递归的。我已经在这上面工作了几个月了,就是想不出来。我的项目将在几天后到期,所以我寻求任何帮助或建议!我的项目描述是有7个“罪犯”,其中三个是“有罪”我必须随机显示7个罪犯中的三个,告诉多少三个是有罪的,并询问用户是否想要猜测谁有罪或通过,直到所有人都被正确猜测。我已经弄明白了大多数其他的东西,我只是坚持使用递归函数来重复显示7中的3个随机数,请求输入,并检查是否正确。
好的,从你给我的东西看,我试着做一个小函数,在我把递归实现到我的项目中之前,我试着练习使用递归作为循环,这是我想出来的:
main = do
num <-
我用c语言编写了一个程序,用来寻找不同公式的整数解。该程序要求用户提供一个定义公式的维度。例如,第三维的公式有三个变量,第二维的公式有两个变量。这些公式看起来类似于以下内容:
dim formula
2 a + b
3 a + b + c
4 a + b + c + d
诸若此类。下一步,程序要求用户提供所有变量的最大值。例如,对于给定的维度,代码可能如下所示:
for(int a = 1; a <= max; a++)
{
for(int b = 1; b <= max; b++)
{
for(int c
我正在使用SICP的书,我正在努力解决递归和迭代过程的概念。在问题1.17中,他们问:
练习1.17。本节中的指数算法是基于通过重复乘法进行指数运算的。以类似的方式,我们可以通过重复加法来执行整数乘法。以下乘法过程(假定我们的语言只能加,不能乘)类似于expt过程:
(define (* a b)
(if (= b 0)
0
(+ a (* a (- b 1)))))
该算法采用b中线性的几个步骤。现在,假设我们在加法的同时,将整数加倍,并将整数除以2的运算减半。利用这些步骤,设计一个类似于使用对数步骤数的快速扩展的乘法过程。
(资料来源:)
我做了以下代码,这似乎是正确的:
(d