精华内容
下载资源
问答
  • F#语言入门之什么是F#语言

    千次阅读 2018-10-24 19:23:18
    F#是一种函数式编程语言,可以轻松编写正确且可维护的代码。 F#编程主要涉及定义类型推断和自动泛化的类型和函数。 这使您可以将焦点保留在问题域上并操纵其数据,而不是编程的细节。 open System // Gets ...

    F#是一种函数式编程语言,可以轻松编写正确且可维护的代码。

    F#编程主要涉及定义类型推断和自动泛化的类型和函数。 这使您可以将焦点保留在问题域上并操纵其数据,而不是编程的细节。

    open System // Gets access to functionality in System namespace.
    
    // Defines a function that takes a name and produces a greeting.
    let getGreeting name =
        sprintf "Hello, %s! Isn't F# great?" name
    
    [<EntryPoint>]
    let main args =
        // Defines a list of names
        let names = [ "Don"; "Julia"; "Xi" ]
    
        // Prints a greeting for each name!
        names
        |> List.map getGreeting
        |> List.iter (fun greeting -> printfn "%s" greeting)
    
        0

    F#有许多功能,包括:

     

    • 轻量级语法
    • 默认不变
    • 类型推断和自动泛化
    • 一流的功能
    • 强大的数据类型
    • 模式匹配
    • 异步编程

    详细内容查看http://nopapp.com/Blog/Article/FSharp-What-Is-FSharp

    F#语言入门之什么是F#语言

    展开全文
  • 例如如下的先序遍历字符串: ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。 输入描述: 输入包括1行字符串,长度不超过100。 输出描述: ...

    1.题目描述
    编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以指针方式存储)。 例如如下的先序遍历字符串: ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。
    输入描述:
    输入包括1行字符串,长度不超过100。
    输出描述:
    可能有多组测试数据,对于每组数据,
    输出将输入字符串建立二叉树后中序遍历的序列,每个字符后面都有一个空格。
    每个输出结果占一行。
    示例1
    输入
    复制
    abc##de#g##f###
    输出
    复制
    c b e g d f a
    2.代码展示

    #include<stdio.h>
    #include<stdlib.h>
    typedef struct TreeNode
    {
         char _val;
        struct TreeNode* pleft;
        struct TreeNode* pright;
    }TreeNode;
    
    TreeNode* CreateTree(char* arr,int *pi)
    {
         if (arr[*pi] == '#')
         {
             return NULL;
         }
         else
         {
         TreeNode * root = (TreeNode *)malloc (sizeof(TreeNode));
             root->_val = arr[*pi] ;
             ++(*pi);
             root->pleft = CreateTree(arr,pi);
               ++(*pi);
             root->pright = CreateTree(arr,pi);
             return root;
         } 
    }
    void InorderTraversal(TreeNode * root)
    {
        if (root == NULL)
        {
            return ;
        }
        InorderTraversal(root->pleft);
        printf("%c ",root->_val);
        InorderTraversal(root->pright);
    }
    
    int main()
    {
         char arr[100];
         scanf("%s",arr);
         int i = 0;
         TreeNode * root = CreateTree(arr,&i);
         InorderTraversal(root);
         return 0;
    }
    

    3.解题思路
    先定义一个长度为100的字符数组,用于存放接收的字符,然后调用创建函数,先序遍历创建一个二叉树,创建完成之后,调用中序遍历函数,输出,我们需要注意的是先序创建二叉树的时候,下标传值的时候一定要传地址。

    展开全文
  • 什么是 F#

    千次阅读 2014-03-07 09:43:39
    什么是 F#?   函数编程是解决许多棘手问题的最好方法,但是,纯函数编程并不适合常规编程。因此,函数编程语言逐渐吸收了命令式、面向对象的编程模式,不仅保持了函数编程范式,同时也混合了其他需要的功能,使...

    什么是 F#?

     

    函数编程是解决许多棘手问题的最好方法,但是,纯函数编程并不适合常规编程。因此,函数编程语言逐渐吸收了命令式、面向对象的编程模式,不仅保持了函数编程范式,同时也混合了其他需要的功能,使函数编程编写各种类型的程序都很容易。F# 就是这种尝试的成功代表,比其他函数编程语言做得更多。

    一些流行的函数编程语言,如OCaml、Haskell、Lisp 和Scheme,一直都使用自己的运行时,使程序缺乏互操作性。F# 是一种通用编程语言,使用.NET 的通用运行时,平滑地集成了三种主要的编程模式,这样,可以选择最好、最有效的模式去解决问题。既可以用优函数编程模式、也可以在同一个程序中组合函数、命令、面向对象风格,利用各自的优势。像其他的函数语言一样,F# 也是强类型,而且有智能提示。因此,程序员不需要太多的时间用来打字,除非存在歧义。此外,F# 与.Net 框架的基础类型库(Base Class Library,BCL)无缝集成。在 F# 中使用基础类型库与在 C# 或Visual Basic 中同样简单,甚至更加简单。

    F# 是成功的面向对象的函数编程语言,以 OCaml为模板,并经调整、扩展使之在理论与技术上能很好地和 .Net 相适应,因此,F# 完全包含.Net,.Net 能做的工作它都能做。F# 编译器能编译通用语言基础架构(Common Language Infrastructure,CLI)的所有内容,不用改变任何代码就能支持 .Net 泛型,甚至还有内置的中间代码(Intermediate Language,IL)。F# 编译器不仅能编译任何CLI 程序,还能运行在任何有CLI的环境中,就是说,F# 并不只限于在Windows 环境下运行,还能运行在Linux、Apple Mac OS X、OpenBSD上(第二章将讨论在Linux 上运行F#)。

    F# 编译器随 Visual Studio 2010一起发布,也可以作为Visual Studio 2008 的一个插件。它支持表达式的智能感知和自动检查,以及为表达式提示推断出的类型。这些都有助于语言的使用、推广。

    F# 由剑桥的微软研究院(MicrosoftResearch,MSR)的Don Syme 博士发明的,现在,位于雷德蒙德的微软公司也接受了这个项目,F# 编译器以及与Visual Studio 的集成由两地的小组共同开发。

    虽然还有其他运行在.Net 上的函数编程语言,但F# 已经成为事实上的.Net 函数编程语言,这完全得益于它实现的质量以及与 .NET 和Visual Studio 很好的集成。

    还没有其他的语言像F# 一样容易使用、具有灵活性。

    展开全文
  • 例如如下的先序遍历字符串: ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起 此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。 输入描述: 输入包括1行字符串,长度不超过100。 输出描述:...

    题目描述:
    编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以指针方式存储)。
    例如如下的先序遍历字符串: ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起
    此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。
    输入描述:
    输入包括1行字符串,长度不超过100。
    输出描述:
    可能有多组测试数据,对于每组数据,输出将输入字符串建立二叉树后中序遍历的序列,每个字符后面
    都有一个空格。每个输出结果占一行。
    示例描述:
    输入:abc##de#g##f###
    输出:c b e g d f a

    代码如下:

    import java.util.*;
    class TreeNode{
        char value;
        TreeNode left;
        TreeNode right;
        public TreeNode(char value) {
            this.value = value;
        }
    }
    public class Main{
        public static int i = 0;
        public static TreeNode createTestTree(String s){
            TreeNode root = null;
            if(s.charAt(i) != '#'){
                root = new TreeNode(s.charAt(i));
                i++;
                root.left = createTestTree(s);
                root.right = createTestTree(s);
            }else {
                i++;
            }
            return root;
        }
         public static void binaryTreeInOrder(TreeNode root){
            if(root == null) {
                return;
            }
            binaryTreeInOrder(root.left);
            System.out.print(root.value+" ");
            binaryTreeInOrder(root.right);
        }
        public static void main(String[] args) {
            Scanner sca = new Scanner(System.in);
            while(sca.hasNext()){
               String s = sca.nextLine();
               TreeNode root =  createTestTree(s);
               binaryTreeInOrder(root);
            }
        }
        
    }
    
    展开全文
  • *二叉树的前、中、后序、层序遍历 非递归 测试:ABC##DE#G##F### */ #include #include #define MAX_SIZE 100 typedef struct BiTNode { char info; struct BiTNode *lchild; struct BiTNode *rchild...
  • 0 then 1 //F#中无"=="号,"="只用于比较,赋值用"<-" else fac n*fac(n-1) //本函数实现阶乘 let rec fib n = //臭名昭著的斐波那契数列递归写法 if ...
  • F#快速入门资料

    千次阅读 2010-03-15 14:19:00
    The basic syntax of F# - keywords and constructsThe basic syntax of F# - classes, interfaces, and membersThe basic syntax of F# - typesF# function types: fun with tuples and curryingDiscrimi
  • F#:微軟的下一代重量級語言

    万次阅读 2008-06-13 13:28:00
    F#:微軟的下一代重量級語言 文 / 蔡學鏞微軟從2002年開始研發F#,2005年推出第一個版本,而2008年的現在,F#已經接近成熟。2007年底,微軟宣布將F#從研究室的專案轉移到產品部門,進入產品化的階段。在下一個版本...
  • Quick Links:Download the F# February 2010 CTP (release info) or VS2010 RC Download the F# October 2009 CTP(release info) Learn F# The F# Language Specification (PDF) MSDN docs for F# (lang
  • 例如如下的先序遍历字符串: ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。输入描述:输入包括1行字符串,长度不超过100。输出描述:可能...
  • F# 微软的函数式程序设计语言

    千次阅读 2006-05-23 15:21:00
    F#,微软研究院正在研究的一种函数式程序设计语言。其灵感来自于 OCaml。其突出的优势是,与visual Studio 2005 紧密整合。F# 可以与.net 平台的其它语言例如C#,VB.net 相互调用操作。想了解更多关于F#,可以访问...
  • 数据结构实验之二叉树二:遍历二叉树 ...已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并按中序和后序的方式遍历该二叉树。 Input 连续输入多组数据,每组数据
  • RGB颜色查询对照表

    千次阅读 2012-04-23 10:49:03
    在线地址 http://www.114la.com/other/rgb.htm RGB颜色对照表   #FFFFFF   #FFFFF0   #FFFFE0   #FFFF00   #FFFAFA   #FFFAF0   #FFFACD ...#FFF68F ...#FFF0F
  • 题目1184:二叉树遍历

    千次阅读 2013-03-07 11:00:07
    题目1184:二叉树遍历 时间限制:1 秒 ...编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以...ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,
  • #和##的用法

    万次阅读 2020-03-28 21:08:47
    strcpy(var2_p,"efgh"); STRCPY(var1,hello); //等于strcpy(var1_p,"var2"); STRCPY(var2,friend); //等于strcpy(var2_p,"var1"); printf("%s\n",var1_p); printf("%s\n",var2_p); return 0; }
  • C++ #与##

    千次阅读 2019-11-25 18:08:13
    假定 class_name 是 CMyClass,那么 #class_name = “CMyClass”, #就是将参数变成字符串。 而## 则是连接作用,是省略:ms_Info##class_name = ms_infoCMyClass ... #define f(a,b) a##b #define...
  • C++ ## 和 #

    千次阅读 2018-11-30 14:15:39
    g(f(1, 2)) -> "f(1, 2)" 在 function-like 宏里出现的参数, 除非它是 # 或 ## 的操作数, 在替换之前先进行扩展, 然后重新扫描整个表达式进行下一步扩展。 因为 g 的参数 是 # 的操作数, 参数不扩展而是立即字符...
  • ##和#的作用

    千次阅读 2016-08-01 21:56:26
    // 相当于 printf("x = %f\n", x) trace(s, s); // 相当于 printf("x = %s\n", x) int x1=1, x2=2, x3=3; trace2(1); // 相当于 trace(x1, d) trace2(2); // 相当于 trace(x2, d) trace2(3); ...
  • C语言中#和##的作用

    万次阅读 2018-06-16 18:24:48
    #define GET_FILE_NAME(f) _GET_FILE_NAME(f)  static char FILE_NAME[] = GET_FILE_NAME(__FILE__);  4、得到一个数值类型所对应的字符串缓冲大小  #define _TYPE_BUF_SIZE(type) sizeof #type  #define ...
  • 根据先序遍历建立一个二叉树

    万次阅读 2017-04-25 23:26:38
    例如如下的先序遍历字符串:ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。输入:输入包括1行字符串,长度不超过100。输出:可能有多组...
  • C语言#和##操作符使用方法

    千次阅读 2018-06-03 20:33:35
    #define CALL(f,p) (printf("Call function %s\n",#f),f(p)) int square(int n) { return n*n; } int func(int n) { return n; } #define NAME(n) name##n //传统方式: //typedef struct _tag_Student ...
  • #0x7f040006 type #0x12 is not valid 查了一下,在R.java中查到 #0x7f040006 是slidingmenu 程序中是这样调用的: slidingMenu.setMenu(R.id.slidingmenu); 正确方法应该这样: slidingMenu.set...
  • C/C++中“#”和“##”的作用和用法

    千次阅读 2015-03-08 16:15:42
    #define GET_FILE_NAME(f) _GET_FILE_NAME(f) //转换宏 //test7 #define _TYPE_BUF_SIZE(type) sizeof #type #define TYPE_BUF_SIZE(type) _TYPE_BUF_SIZE(type) //test8 #define D(x) #@x //仅对单一标记转换...
  • #F8FBF4 #F7F9F5 #F7F8F6 #F2F9E8 #F2F7EA #F1F4EC #F0F2EE #E8F5D5 #E7F1D9 #E6EDDD #E6E9E1 #D9EFB9 #D8E8C0 #D8E8C0 #D5DACD #C4E693 #C2DB9D #C0D1A8 #BEC7B2 #ABDC65 #A8CD74 #A6BE83 #A3AF91 #90D133 #8CBD47 ...
  • 谈谈#define xxxx(x,y) x##y

    千次阅读 2017-06-04 19:34:55
    先看一个例子:#define czg(x,y) x##y czg(love,9728)=? 答案:love9728 ## 被称为连接符,用来将两个宏参数连接为一个宏参数。 再看:#define czg(x) #@x czg(3)=?... 但是如果你的测试参数超过四个
  • 【Android UI】色板

    万次阅读 2011-03-10 09:39:00
    Hex CodeColor#FFFFFF #FFFFCC #FFFF99 #FFFF66 #FFFF33 #FFFF00 #FFCCFF #FFCCCC #FFCC99 #FFCC66 #FFCC33 #FFCC00 #FF99FF #FF99CC #FF9999 #FF9966 #FF9933 #FF9900 #FF66FF #FF66CC ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,813,407
精华内容 1,525,362
关键字:

f#