¾µäÅÅÐòËã·¨ CʵÏÖ
PART (1)
/*
===============================================
¾µäÅÅÐò˼Ï룬²¢ÓÃCÓïÑÔÖ¸ÕëʵÏÖÅÅÐòËã·¨
================================================
*/
/*
=============================================================================
Ïà¹ØÖªÊ¶½éÉÜ£¨ËùÓж¨ÒåֻΪ°ïÖú¶ÁÕßÀí½âÏà¹Ø¸ÅÄ²¢·ÇÑϸñ¶¨Ò壩£º
1¡¢Îȶ¨ÅÅÐòºÍ·ÇÎȶ¨ÅÅÐò
¼òµ¥µØËµ¾ÍÊÇËùÓÐÏàµÈµÄÊý¾¹ýijÖÖÅÅÐò·½·¨ºó£¬ÈÔÄܱ£³ÖËüÃÇÔÚÅÅÐò֮ǰµÄÏà¶Ô´ÎÐò£¬ÎÒÃǾÍ
˵ÕâÖÖÅÅÐò·½·¨ÊÇÎȶ¨µÄ¡£·´Ö®£¬¾ÍÊÇ·ÇÎȶ¨µÄ¡£
±ÈÈ磺һ×éÊýÅÅÐòǰÊÇa1,a2,a3,a4,a5£¬ÆäÖÐa2=a4£¬¾¹ýijÖÖÅÅÐòºóΪa1,a2,a4,a3,a5£¬
ÔòÎÒÃÇ˵ÕâÖÖÅÅÐòÊÇÎȶ¨µÄ£¬ÒòΪa2ÅÅÐòǰÔÚa4µÄÇ°Ãæ£¬ÅÅÐòºóËü»¹ÊÇÔÚa4µÄÇ°Ãæ¡£¼ÙÈç±ä³Éa1,a4,
a2,a3,a5¾Í²»ÊÇÎȶ¨µÄÁË¡£
2¡¢ÄÚÅÅÐòºÍÍâÅÅÐò
ÔÚÅÅÐò¹ý³ÌÖУ¬ËùÓÐÐèÒªÅÅÐòµÄÊý¶¼ÔÚÄڴ棬²¢ÔÚÄÚ´æÖе÷ÕûËüÃǵĴ洢˳Ðò£¬³ÆÎªÄÚÅÅÐò£»
ÔÚÅÅÐò¹ý³ÌÖУ¬Ö»Óв¿·ÖÊý±»µ÷ÈëÄڴ棬²¢½èÖúÄÚ´æµ÷ÕûÊýÔÚÍâ´æÖеĴæ·Å˳ÐòÅÅÐò·½·¨³ÆÎªÍâÅÅÐò¡£
3¡¢Ëã·¨µÄʱ¼ä¸´ÔӶȺͿռ临ÔÓ¶È
ËùνËã·¨µÄʱ¼ä¸´ÔÓ¶È£¬ÊÇÖ¸Ö´ÐÐËã·¨ËùÐèÒªµÄ¼ÆË㹤×÷Á¿¡£
Ò»¸öËã·¨µÄ¿Õ¼ä¸´ÔÓ¶È£¬Ò»°ãÊÇÖ¸Ö´ÐÐÕâ¸öËã·¨ËùÐèÒªµÄÄÚ´æ¿Õ¼ä¡£
================================================================================
*/
/*
================================================
¹¦ÄÜ£ºÑ¡ÔñÅÅÐò
ÊäÈ룺Êý×éÃû³Æ£¨Ò²¾ÍÊÇÊý×éÊ×µØÖ·£©¡¢Êý×éÖÐÔªËØ¸öÊý
================================================
*/
/*
====================================================
Ë㷨˼Ïë¼òµ¥ÃèÊö£º
ÔÚÒªÅÅÐòµÄÒ»×éÊýÖУ¬Ñ¡³ö×îСµÄÒ»¸öÊýÓëµÚÒ»¸öλÖõÄÊý½»»»£»
È»ºóÔÚʣϵÄÊýµ±ÖÐÔÙÕÒ×îСµÄÓëµÚ¶þ¸öλÖõÄÊý½»»»£¬Èç´ËÑ»·
µ½µ¹ÊýµÚ¶þ¸öÊýºÍ×îºóÒ»¸öÊý±È½ÏΪֹ¡£
Ñ¡ÔñÅÅÐòÊDz»Îȶ¨µÄ¡£Ëã·¨¸´ÔÓ¶ÈO(n2)--[nµÄƽ·½]
=====================================================
*/
void select_sort(int *x, int n)
{
int i, j, min, t;
for (i=0; i<n-1; i++) /*ҪѡÔñµÄ´ÎÊý£º0~n-2¹²n-1´Î*/
{
min = i; /*¼ÙÉ赱ǰϱêΪiµÄÊý×îС£¬±È½ÏºóÔÙµ÷Õû*/
for (j=i+1; j<n; j++)/*Ñ»·ÕÒ³ö×îСµÄÊýµÄϱêÊÇÄĸö*/
{
if (*(x+j) < *(x+min))
Ïà¹ØÎĵµ£º
¡¡¡¡Ëã·¨£¨Algorithm£©£º¼ÆËã»ú½âÌâµÄ»ù±¾Ë¼Ïë·½·¨ºÍ²½Öè¡£Ëã·¨µÄÃèÊö£ºÊǶÔÒª½â¾öÒ»¸öÎÊÌâ»òÒªÍê³ÉÒ»ÏîÈÎÎñËù²ÉÈ¡µÄ·½·¨ºÍ²½ÖèµÄÃèÊö£¬°üÀ¨ÐèҪʲôÊý¾Ý£¨ÊäÈëʲôÊý¾Ý¡¢Êä³öʲô½á¹û£©¡¢²ÉÓÃʲô½á¹¹¡¢Ê¹ÓÃʲôÓï¾äÒÔ¼°ÈçºÎ°²ÅÅÕâЩÓï¾äµÈ¡£Í¨³£Ê¹ÓÃ×ÔÈ»ÓïÑÔ¡¢½á¹¹»¯Á÷³Ìͼ¡¢Î±´úÂëµÈÀ´ÃèÊöËã·¨¡£
¡¡¡¡Ò»¡¢¼ÆÊý¡¢ÇóºÍ¡ ......
1. ʲôÊÇ¿ÕÖ¸Õë³£Á¿£¨null pointer constant£©?
[ 6.3.2.3-3] An integer constant expression with the value 0, or such an expression cast to type void *, is called a null pointer constant.
ÕâÀï¸æËßÎÒÃÇ£º0¡¢0L¡¢'\0'¡¢3 - 3¡¢0 * 17 £¨ËüÃǶ¼ÊÇ“integer constant expression”£©ÒÔ¼° ......
#include <stdio.h>
#include <string.h>
#include <math.h>
#define BASE 10
int intlen(long n);
int main()
{
int i, j, num, sz;
i = j = num = sz = 0;
if (!scanf("%d", &num) || num <= 0) {
printf("invalid input\n");
retu ......
ÔÚcÖУ¬²ÎÊýĬÈÏÊÇ´«ÖµµÄ£¬¼´ÔÚ²ÎÊýÈëջʱ±»¸´ÖÆÒ»·Ý
¡£ÔÚº¯ÊýÀïÃæÐÞ¸ÄÕâЩ²ÎÊý£¬²»»áÓ°ÏìÍâÃæµÄµ÷ÓÃÕß¡£
ÀýÈç
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
void get_str(char * p)
{
p = (char *)malloc(sizeof("abcd"));
s ......
//ÊäÈë²ÎÊý£º*str ËÑË÷×Ö·û´®
// subStrLen ÓÃÓÚ·µ»ØÕÒµ½µÄ×î´ó×Ó×Ö·û´®³¤¶È
//·µ»Ø£ºÕÒµ½µÄ×î´ó×Ó×Ö·û´®Ö¸Õë
char * findMaxSubStr(char *str, int &subStrLen){
char *subStr;
char *p = str;
int index[256] ;
for (int ix = 0; ix < sizeof(index)/sizeof(index[0]); ix++)
{
in ......