小编sap*_*sap的帖子

野牛 - 如何打印解析树

嗨,我正在研究一个小野牛,以了解它是如何工作的.野牛应该解析一个句子.句子由表达式组成,表达式由单词组成.

以下是我的代码:

%{
#include <stdio.h>
#include <string.h>


void yyerror(const char *str)
{
    fprintf(stderr,"error: %s\n",str);
}

int yywrap()
{
    return 1;
}

main()
{
    yyparse();
}

%}

%token ASSIGN RANGE OR AND WHITESPACE QUOTE LPAREN RPAREN NOT GREATER LESS

%union 
{
        int number;
        char *string;
}

%token <number> VALUE
%token <string> WORD

%type <string> term
%type <string> expression
%%

query:   /* empty */
    | query expression 
    {
        printf("WOrd:%s",$2);
    }
    ;

expression:
     term
    |expression term
    |expression AND term
        {
            printf("AND");
        }
    ; …
Run Code Online (Sandbox Code Playgroud)

bison

2
推荐指数
1
解决办法
7037
查看次数

Code :: Blocks/Dev-c ++:错误:iostream:没有这样的文件或目录

我从这里下载了Code :: Blocks:http://www.codeblocks.org/downloads/26

我正在学习c编程.当我运行以下程序时,我收到错误:

iostream: No such file or directory
error: syntax error before "namespace"
warning: type defaults to `int' in declaration of `std'
warning: data definition has no type or storage class
In function `main':
error: `cout' undeclared (first use in this function)
error: (Each undeclared identifier is reported only once
error: for each function it appears in.)
error: `cin' undeclared (first use in this function)
Run Code Online (Sandbox Code Playgroud)

我正在运行以下程序:

#include <iostream>
using namespace std;

int main()
{
  int …
Run Code Online (Sandbox Code Playgroud)

c++ dev-c++

2
推荐指数
3
解决办法
8万
查看次数

查找Set-cover问题的最小尺寸集覆盖的算法

在Set Covering问题中,我们给出了一个宇宙U,例如| U | = n,并且设置S1,......,Sk是U的子集.集合封面是来自S1的一些集合的集合C,... ......,Sk的联盟是整个宇宙U.

我正在尝试提出一种算法,该算法将找到最小数量的集合覆盖,以便我可以证明集合覆盖的贪婪算法有时会找到更多集合.

以下是我提出的:

重复每一组.1.覆盖<-Seti(i = 1 ,,, n)2.如果一个集合不是任何其他集合的子集,则将该集合置于封面.

但它在某些情况下不起作用.请帮我弄清楚找到最小集合覆盖率的算法.

我仍有问题在网上找到这个算法.有人有什么建议吗?

algorithm programming-languages

1
推荐指数
1
解决办法
8755
查看次数

如何使用Java中的套接字将文件名与文件一起发送?

我有以下代码通过套接字传输文件.如何发送文件名?

Socket socket = new Socket("localhost", port);//machine name, port number
File file = new File(fileName);
// Get the size of the file
long length = file.length();
if (length > Integer.MAX_VALUE) 
{
    System.out.println("File is too large.");
}
byte[] bytes = new byte[(int) length];
FileInputStream fis = new FileInputStream(file);
BufferedInputStream bis = new BufferedInputStream(fis);
BufferedOutputStream out = new BufferedOutputStream(socket.getOutputStream());

int count;

while ((count = bis.read(bytes)) > 0) 
{
    out.write(bytes, 0, count);
}

out.flush();
out.close();
fis.close();
bis.close();
socket.close();
Run Code Online (Sandbox Code Playgroud)

java sockets p2p

0
推荐指数
1
解决办法
5139
查看次数

标签 统计

algorithm ×1

bison ×1

c++ ×1

dev-c++ ×1

java ×1

p2p ×1

programming-languages ×1

sockets ×1